For bug #181387, fix an UnboundLocalError for the mymtime variable that is triggered...
authorZac Medico <zmedico@gentoo.org>
Sat, 9 Jun 2007 10:55:34 +0000 (10:55 -0000)
committerZac Medico <zmedico@gentoo.org>
Sat, 9 Jun 2007 10:55:34 +0000 (10:55 -0000)
svn path=/main/trunk/; revision=6778

pym/portage/dbapi/vartree.py

index 7122fcac1324ff3085a787f0826397ee5a9fc167..1213712ef8617626ffbfe21a16863918f49d4e9a 100644 (file)
@@ -1777,12 +1777,14 @@ class dblink(object):
                        # handy variables; mydest is the target object on the live filesystems;
                        # mysrc is the source object in the temporary install dir
                        try:
-                               mydmode = os.lstat(mydest).st_mode
+                               mydstat = os.lstat(mydest)
+                               mydmode = mydstat.st_mode
                        except OSError, e:
                                if e.errno != errno.ENOENT:
                                        raise
                                del e
                                #dest file doesn't exist
+                               mydstat = None
                                mydmode = None
 
                        if stat.S_ISLNK(mymode):
@@ -1902,6 +1904,7 @@ class dblink(object):
                                mydestdir = os.path.dirname(mydest)
                                moveme = 1
                                zing = "!!!"
+                               mymtime = None
                                if mydmode != None:
                                        # destination file exists
                                        if stat.S_ISDIR(mydmode):
@@ -1925,9 +1928,11 @@ class dblink(object):
                                                                        """ An identical update has previously been
                                                                        merged.  Skip it unless the user has chosen
                                                                        --noconfmem."""
-                                                                       zing = "-o-"
                                                                        moveme = cfgfiledict["IGNORE"]
                                                                        cfgprot = cfgfiledict["IGNORE"]
+                                                                       if not moveme:
+                                                                               zing = "-o-"
+                                                                               mymtime = long(mydstat.st_mtime)
                                                                else:
                                                                        moveme = 1
                                                                        cfgprot = 1