Gentoo Archives: gentoo-commits

From: Zac Medico <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/
Date: Wed, 18 May 2011 05:27:33
Message-Id: 4bc4e589bd925d0bad8c6e5b8e30e3c37a371c01.zmedico@gentoo
1 commit: 4bc4e589bd925d0bad8c6e5b8e30e3c37a371c01
2 Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
3 AuthorDate: Wed May 18 05:27:07 2011 +0000
4 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
5 CommitDate: Wed May 18 05:27:07 2011 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=4bc4e589
7
8 preserve-libs: check for broken linkmap more
9
10 ---
11 pym/portage/dbapi/vartree.py | 9 ++++++---
12 1 files changed, 6 insertions(+), 3 deletions(-)
13
14 diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py
15 index cae8cd0..fd5c774 100644
16 --- a/pym/portage/dbapi/vartree.py
17 +++ b/pym/portage/dbapi/vartree.py
18 @@ -1498,9 +1498,11 @@ class dblink(object):
19 def _prune_plib_registry(self, unmerge=False,
20 needed=None, preserve_paths=None):
21 # remove preserved libraries that don't have any consumers left
22 - plib_registry = self.vartree.dbapi._plib_registry
23 - if plib_registry:
24 + if not (self._linkmap_broken or
25 + self.vartree.dbapi._linkmap is None or
26 + self.vartree.dbapi._plib_registry is None):
27 self.vartree.dbapi._fs_lock()
28 + plib_registry = self.vartree.dbapi._plib_registry
29 plib_registry.lock()
30 try:
31 plib_registry.load()
32 @@ -3405,7 +3407,8 @@ class dblink(object):
33
34 preserve_paths = set()
35 needed = None
36 - if not (linkmap is None or plib_registry is None):
37 + if not (self._linkmap_broken or linkmap is None or
38 + plib_registry is None):
39 self.vartree.dbapi._fs_lock()
40 plib_registry.lock()
41 try: