cope with card being deleted out from under us in edit current

This commit is contained in:
Damien Elmes 2012-10-23 21:48:53 +09:00
parent 971a69fdbc
commit d4d3bbb492

View file

@ -37,18 +37,26 @@ class EditCurrent(QDialog):
def onReset(self): def onReset(self):
# lazy approach for now: throw away edits # lazy approach for now: throw away edits
try:
n = self.mw.reviewer.card.note() n = self.mw.reviewer.card.note()
n.load() n.load()
except:
# card's been deleted
remHook("reset", self.onReset)
self.editor.setNote(None)
self.mw.reset()
aqt.dialogs.close("EditCurrent")
self.close()
return
self.editor.setNote(n) self.editor.setNote(n)
def onSave(self): def onSave(self):
remHook("reset", self.onReset) remHook("reset", self.onReset)
self.editor.saveNow() self.editor.saveNow()
self.editor.setNote(None)
r = self.mw.reviewer r = self.mw.reviewer
try: try:
r.card.load() r.card.load()
except TypeError: except:
# card was removed by clayout # card was removed by clayout
pass pass
else: else: