manually merge differences with the trunk
authorFabian Groffen <grobian@gentoo.org>
Mon, 12 May 2008 19:26:22 +0000 (19:26 -0000)
committerFabian Groffen <grobian@gentoo.org>
Mon, 12 May 2008 19:26:22 +0000 (19:26 -0000)
svn path=/main/branches/prefix/; revision=10308

pym/portage/dbapi/vartree.py
pym/portage/locks.py

index ac54e75d87410b72b8cf88c05ef80e0a8bb1f2e7..540ae81c186990114ceea9a5bf9ced39e04b1bcf 100644 (file)
@@ -1822,6 +1822,7 @@ class dblink(object):
                for lib in list(candidates):
                        if not has_external_consumers(lib, old_contents, candidates):
                                candidates.remove(lib)
+                               continue
                        # only preserve the lib if there is no other copy to use for each consumer
                        keep = False
                        for c in linkmap.findConsumers(lib):
@@ -1831,12 +1832,15 @@ class dblink(object):
                                for soname in providers:
                                        if lib in providers[soname]:
                                                for p in providers[soname]:
-                                                       if p not in candidates:
+                                                       if p not in candidates or os.path.exists(os.path.join(srcroot, p.lstrip(os.sep))):
                                                                localkeep = False
                                                                break
                                                break
                                if localkeep:
                                        keep = True
+                       if not keep:
+                               candidates.remove(lib)
+                               continue
                
                del mylibs, mycontents, old_contents, liblist
                
index 02114123498b710d879688106fd12dd2a9177c9a..f3e090f6bcab71ee45fc043f79b5718a6fed4244 100644 (file)
@@ -20,7 +20,7 @@ def unlockdir(mylock):
 
 def lockfile(mypath, wantnewlockfile=0, unlinkfile=0, waiting_msg=None):
        """Creates all dirs upto, the given dir. Creates a lockfile
-       for the given directory as the file: directoryname+'.portage.lockfile'."""
+       for the given directory as the file: directoryname+'.portage_lockfile'."""
        import fcntl
 
        if not mypath:
@@ -37,7 +37,7 @@ def lockfile(mypath, wantnewlockfile=0, unlinkfile=0, waiting_msg=None):
                unlinkfile      = 0
        elif wantnewlockfile:
                base, tail = os.path.split(mypath)
-               lockfilename = os.path.join(base, "." + tail + ".portage.lockfile")
+               lockfilename = os.path.join(base, "." + tail + ".portage_lockfile")
                del base, tail
                unlinkfile   = 1
        else: