summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage/dbapi/vartree.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py
index 7122fcac1..1213712ef 100644
--- a/pym/portage/dbapi/vartree.py
+++ b/pym/portage/dbapi/vartree.py
@@ -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