mirror of
https://github.com/ankitects/anki.git
synced 2025-09-18 22:12:21 -04:00
fix regression when renaming deck to child of itself
This commit is contained in:
parent
6ff5c3b2c2
commit
d5e43b364c
1 changed files with 5 additions and 3 deletions
|
@ -221,16 +221,18 @@ class DeckManager(object):
|
||||||
# make sure target node doesn't already exist
|
# make sure target node doesn't already exist
|
||||||
if newName in self.allNames():
|
if newName in self.allNames():
|
||||||
raise DeckRenameError(_("That deck already exists."))
|
raise DeckRenameError(_("That deck already exists."))
|
||||||
|
# ensure we have parents
|
||||||
|
newName = self._ensureParents(newName)
|
||||||
# rename children
|
# rename children
|
||||||
for grp in self.all():
|
for grp in self.all():
|
||||||
if grp['name'].startswith(g['name'] + "::"):
|
if grp['name'].startswith(g['name'] + "::"):
|
||||||
grp['name'] = grp['name'].replace(g['name']+ "::",
|
grp['name'] = grp['name'].replace(g['name']+ "::",
|
||||||
newName + "::")
|
newName + "::")
|
||||||
self.save(grp)
|
self.save(grp)
|
||||||
# ensure we have parents
|
# adjust name
|
||||||
newName = self._ensureParents(newName)
|
|
||||||
# adjust name and save
|
|
||||||
g['name'] = newName
|
g['name'] = newName
|
||||||
|
# ensure we have parents again, as we may have renamed parent->child
|
||||||
|
newName = self._ensureParents(newName)
|
||||||
self.save(g)
|
self.save(g)
|
||||||
# renaming may have altered active did order
|
# renaming may have altered active did order
|
||||||
self.maybeAddToActive()
|
self.maybeAddToActive()
|
||||||
|
|
Loading…
Reference in a new issue