fix error after undoing default deck deletion

This commit is contained in:
Damien Elmes 2021-04-03 16:54:02 +10:00
parent 3a6f2a993e
commit 10309c9d9c

View file

@ -513,11 +513,13 @@ impl Collection {
}; };
self.clear_aux_config_for_deck(deck.id)?; self.clear_aux_config_for_deck(deck.id)?;
if deck.id.0 == 1 { if deck.id.0 == 1 {
// if deleting the default deck, ensure there's a new one, and avoid the grave // if the default deck is included, just ensure it's reset to the default
let mut deck = deck.to_owned(); // name, as we've already removed its cards
deck.name = self.tr.deck_config_default_name().into(); let mut modified_default = deck.clone();
deck.set_modified(usn); modified_default.name = self.tr.deck_config_default_name().into();
self.add_or_update_single_deck_with_existing_id(&mut deck, usn)?; self.prepare_deck_for_update(&mut modified_default, usn)?;
modified_default.set_modified(usn);
self.update_single_deck_undoable(&mut modified_default, deck.clone())?;
} else { } else {
self.remove_deck_and_add_grave_undoable(deck.clone(), usn)?; self.remove_deck_and_add_grave_undoable(deck.clone(), usn)?;
} }