1 |
commit: 09cb0079ee6da6fef3eea1043f3e75e89ec954d7 |
2 |
Author: David James <davidjames <AT> chromium <DOT> org> |
3 |
AuthorDate: Sun May 8 06:08:01 2011 +0000 |
4 |
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun May 8 06:24:18 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=09cb0079 |
7 |
|
8 |
Use new vardbapi lock function in FakeVartree. |
9 |
|
10 |
BUG=none |
11 |
TEST=Merged some packages with new code. Ran test suite. |
12 |
|
13 |
Change-Id: Ibb9380122631bf6c79e39691233cfd641931b75a |
14 |
|
15 |
--- |
16 |
pym/_emerge/FakeVartree.py | 17 ++++++----------- |
17 |
1 files changed, 6 insertions(+), 11 deletions(-) |
18 |
|
19 |
diff --git a/pym/_emerge/FakeVartree.py b/pym/_emerge/FakeVartree.py |
20 |
index fa490c2..ff092ad 100644 |
21 |
--- a/pym/_emerge/FakeVartree.py |
22 |
+++ b/pym/_emerge/FakeVartree.py |
23 |
@@ -119,20 +119,15 @@ class FakeVartree(vartree): |
24 |
after one or more packages may have been installed or |
25 |
uninstalled. |
26 |
""" |
27 |
- vdb_path = os.path.join(self.settings['EROOT'], portage.VDB_PATH) |
28 |
+ locked = False |
29 |
try: |
30 |
- # At least the parent needs to exist for the lock file. |
31 |
- portage.util.ensure_dirs(vdb_path) |
32 |
- except portage.exception.PortageException: |
33 |
- pass |
34 |
- vdb_lock = None |
35 |
- try: |
36 |
- if acquire_lock and os.access(vdb_path, os.W_OK): |
37 |
- vdb_lock = portage.locks.lockdir(vdb_path) |
38 |
+ if acquire_lock and os.access(self._real_vardb._dbroot, os.W_OK): |
39 |
+ self._real_vardb.lock() |
40 |
+ locked = True |
41 |
self._sync() |
42 |
finally: |
43 |
- if vdb_lock: |
44 |
- portage.locks.unlockdir(vdb_lock) |
45 |
+ if locked: |
46 |
+ self._real_vardb.unlock() |
47 |
|
48 |
# Populate the old-style virtuals using the cached values. |
49 |
# Skip the aux_get wrapper here, to avoid unwanted |