make sure we don't fail if attempting to reset revearly cards before upgrade

This commit is contained in:
Damien Elmes 2010-11-02 02:04:54 +09:00
parent 2c5ac66083
commit 37c15a320e

View file

@ -190,7 +190,11 @@ class Deck(object):
self.answerPreSave = None self.answerPreSave = None
self.scheduler = "standard" self.scheduler = "standard"
# restore any cards temporarily suspended by alternate schedulers # restore any cards temporarily suspended by alternate schedulers
self.resetAfterReviewEarly() try:
self.resetAfterReviewEarly()
except OperationalError, e:
# will fail if deck hasn't been upgraded yet
pass
def fillQueues(self): def fillQueues(self):
self.fillFailedQueue() self.fillFailedQueue()
@ -3476,7 +3480,7 @@ class DeckStorage(object):
traceback.print_exc() traceback.print_exc()
deck.fixIntegrity() deck.fixIntegrity()
deck = DeckStorage._upgradeDeck(deck, path) deck = DeckStorage._upgradeDeck(deck, path)
except OperationalError, e: except SyntaxError: # OperationalError, e:
engine.dispose() engine.dispose()
if (str(e.orig).startswith("database table is locked") or if (str(e.orig).startswith("database table is locked") or
str(e.orig).startswith("database is locked")): str(e.orig).startswith("database is locked")):