Also call PreservedLibsRegistry.pruneNonExisting() after obtaining a lock
authorZac Medico <zmedico@gentoo.org>
Sat, 1 Nov 2008 07:09:19 +0000 (07:09 -0000)
committerZac Medico <zmedico@gentoo.org>
Sat, 1 Nov 2008 07:09:19 +0000 (07:09 -0000)
and loading it for merge or unmerge.

svn path=/main/trunk/; revision=11780

pym/portage/__init__.py
pym/portage/dbapi/vartree.py

index d6b2f77dfac8c86b65c8fe1dd033f0c9a4988c60..92c567f1c0e14cce74ebd934a51d9c005255a43d 100644 (file)
@@ -6067,6 +6067,7 @@ def unmerge(cat, pkg, myroot, mysettings, mytrimworld=1, vartree=None,
                mylink.lockdb()
                if mylink.exists():
                        vartree.dbapi.plib_registry.load()
+                       vartree.dbapi.plib_registry.pruneNonExisting()
                        retval = mylink.unmerge(trimworld=mytrimworld, cleanup=1,
                                ldpath_mtimes=ldpath_mtimes)
                        if retval == os.EX_OK:
index 68e0ecf16e5afcb02e40b97b2104c60ad37ce51f..c240391795996efaa1fa0274fe4d5ec26cf04dbb 100644 (file)
@@ -3744,6 +3744,7 @@ class dblink(object):
                self.lockdb()
                try:
                        self.vartree.dbapi.plib_registry.load()
+                       self.vartree.dbapi.plib_registry.pruneNonExisting()
                        retval = self.treewalk(mergeroot, myroot, inforoot, myebuild,
                                cleanup=cleanup, mydbapi=mydbapi, prev_mtimes=prev_mtimes)
                        # undo registrations of preserved libraries, bug #210501