summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage/dbapi/vartree.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py
index 2f8ced89f..cba96cacd 100644
--- a/pym/portage/dbapi/vartree.py
+++ b/pym/portage/dbapi/vartree.py
@@ -1603,8 +1603,10 @@ class dblink(object):
for lib in list(preserve_libs):
if not has_external_consumers(lib, old_contents, preserve_libs):
preserve_libs.remove(lib)
+ # only preserve the lib if there is no other copy in the search path
for path in getlibpaths():
- if os.path.exists(os.path.join(path, lib)):
+ fullname = os.path.join(path, lib)
+ if fullname not in old_contents and os.path.exists(fullname):
preserve_libs.remove(lib)
# get the real paths for the libs