From d4d3bbb492bee2aec5565df55b586e7af8909cd4 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Tue, 23 Oct 2012 21:48:53 +0900 Subject: [PATCH] cope with card being deleted out from under us in edit current --- aqt/editcurrent.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/aqt/editcurrent.py b/aqt/editcurrent.py index 87cd95c10..29e98f0fe 100644 --- a/aqt/editcurrent.py +++ b/aqt/editcurrent.py @@ -37,18 +37,26 @@ class EditCurrent(QDialog): def onReset(self): # lazy approach for now: throw away edits - n = self.mw.reviewer.card.note() - n.load() + try: + n = self.mw.reviewer.card.note() + 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) def onSave(self): remHook("reset", self.onReset) self.editor.saveNow() - self.editor.setNote(None) r = self.mw.reviewer try: r.card.load() - except TypeError: + except: # card was removed by clayout pass else: