diff --git a/anki/media.py b/anki/media.py index 414350cdb..c1f855042 100644 --- a/anki/media.py +++ b/anki/media.py @@ -20,6 +20,7 @@ class MediaManager(object): def __init__(self, col, server): self.col = col if server: + self._dir = None return # media directory self._dir = re.sub("(?i)\.(anki2)$", ".media", self.col.path) diff --git a/anki/storage.py b/anki/storage.py index c1b74dff7..cc6453453 100644 --- a/anki/storage.py +++ b/anki/storage.py @@ -124,16 +124,18 @@ def _upgrade(col, ver): # adding an empty file to a zip makes python's zip code think it's a # folder, so remove any empty files changed = False - for f in os.listdir(col.media.dir()): - if os.path.isfile(f) and not os.path.getsize(f): - os.unlink(f) - col.media.db.execute( - "delete from log where fname = ?", f) - col.media.db.execute( - "delete from media where fname = ?", f) - changed = True - if changed: - col.media.db.commit() + dir = col.media.dir() + if dir: + for f in os.listdir(col.media.dir()): + if os.path.isfile(f) and not os.path.getsize(f): + os.unlink(f) + col.media.db.execute( + "delete from log where fname = ?", f) + col.media.db.execute( + "delete from media where fname = ?", f) + changed = True + if changed: + col.media.db.commit() col.db.execute("update col set ver = 9") if ver < 10: col.db.execute("""