Bug #221053 - Save the resume list before verifying the ebuild Manifests
authorZac Medico <zmedico@gentoo.org>
Fri, 9 May 2008 19:12:48 +0000 (19:12 -0000)
committerZac Medico <zmedico@gentoo.org>
Fri, 9 May 2008 19:12:48 +0000 (19:12 -0000)
since it might be possible for the user to use --resume --skipfirst get
past a non-essential package with a broken digest.

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

pym/_emerge/__init__.py

index 1d05c67a90d3ef8797d9518bbec9630ea43aa61e..7891c4426103690f1047ddcc8049644ccbe4bb93 100644 (file)
@@ -5607,6 +5607,13 @@ class MergeTask(object):
                        print colorize("GOOD", "*** Resuming merge...")
                        emergelog(xterm_titles, " *** Resuming merge...")
 
+               # Do this before verifying the ebuild Manifests since it might
+               # be possible for the user to use --resume --skipfirst get past
+               # a non-essential package with a broken digest.
+               mtimedb["resume"]["mergelist"] = [list(x) for x in mylist \
+                       if isinstance(x, Package) and x.operation == "merge"]
+               mtimedb.commit()
+
                # Verify all the manifests now so that the user is notified of failure
                # as soon as possible.
                if "--fetchonly" not in self.myopts and \
@@ -5640,10 +5647,6 @@ class MergeTask(object):
                args_set = InternalPackageSet(favorites)
                world_set = root_config.sets["world"]
 
-               mtimedb["resume"]["mergelist"] = [list(x) for x in mylist \
-                       if isinstance(x, Package) and x.operation == "merge"]
-               mtimedb.commit()
-
                mymergelist = mylist
                myfeat = self.settings.features[:]
                bad_resume_opts = set(["--ask", "--changelog", "--skipfirst",