From 0f8762c3fef5ec16c2e9c5738c40d56e95011140 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Mon, 1 Dec 2008 12:51:35 +0900 Subject: [PATCH] forget deletions before deleting anything in fixIntegrity() --- anki/deck.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/anki/deck.py b/anki/deck.py index 1126aaa5f..a9bcb0579 100644 --- a/anki/deck.py +++ b/anki/deck.py @@ -1470,6 +1470,11 @@ select decks.id from decks, models where decks.currentModelId = models.id"""): self.currentModelId = self.models[0].id problems.append(_("The current model didn't exist")) + # forget all deletions (do this before deleting anything) + self.s.statement("delete from cardsDeleted") + self.s.statement("delete from factsDeleted") + self.s.statement("delete from modelsDeleted") + self.s.statement("delete from mediaDeleted") # facts missing a field? ids = self.s.column0(""" select distinct facts.id from facts, fieldModels where @@ -1524,11 +1529,6 @@ select id from fields where factId not in (select id from facts)""") # regenerate question/answer cache for m in self.models: self.updateCardsFromModel(m) - # forget all deletions - self.s.statement("delete from cardsDeleted") - self.s.statement("delete from factsDeleted") - self.s.statement("delete from modelsDeleted") - self.s.statement("delete from mediaDeleted") # mark everything changed to force sync self.s.flush() self.s.statement("update cards set modified = :t", t=time.time())