diff --git a/src/calibre/devices/kindle/driver.py b/src/calibre/devices/kindle/driver.py index c3e7bb190d..98e16bd207 100644 --- a/src/calibre/devices/kindle/driver.py +++ b/src/calibre/devices/kindle/driver.py @@ -213,7 +213,7 @@ class KINDLE_DX(KINDLE2): PRODUCT_ID = [0x0003] BCD = [0x0100] -class Bookmark(): +class Bookmark(): # {{{ ''' A simple class fetching bookmark data Kindle-specific @@ -517,3 +517,6 @@ class Bookmark(): else: print "unsupported bookmark_extension: %s" % self.bookmark_extension + +# }}} + diff --git a/src/calibre/utils/zipfile.py b/src/calibre/utils/zipfile.py index 71eccc7543..50d621a986 100644 --- a/src/calibre/utils/zipfile.py +++ b/src/calibre/utils/zipfile.py @@ -1071,8 +1071,13 @@ class ZipFile: # Create all upper directories if necessary. upperdirs = os.path.dirname(targetpath) - if upperdirs and os.path.exists(upperdirs) and not os.path.isdir(upperdirs): - os.unlink(upperdirs) + while upperdirs: + if os.path.exists(upperdirs): + if os.path.isdir(upperdirs): + break + os.remove(upperdirs) + upperdirs = os.path.dirname(upperdirs) + upperdirs = os.path.dirname(targetpath) if upperdirs and not os.path.exists(upperdirs): os.makedirs(upperdirs)