Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 90680 | Differences between
and this patch

Collapse All | Expand All

(-)orig/gentoolkit/__init__.py (+2 lines)
Lines 24-30 Link Here
24
import re
24
import re
25
import string
25
import string
26
import types
26
import types
27
from threading import Semaphore
27
28
29
settingslock = Semaphore()
28
settings = portage.config(clone=portage.settings)
30
settings = portage.config(clone=portage.settings)
29
porttree = portage.db[portage.root]["porttree"]
31
porttree = portage.db[portage.root]["porttree"]
30
vartree  = portage.db[portage.root]["vartree"]
32
vartree  = portage.db[portage.root]["vartree"]
(-)orig/gentoolkit/package.py (-3 / +8 lines)
Lines 23-30 Link Here
23
		if not self._scpv:
23
		if not self._scpv:
24
			raise FatalError("invalid cpv: %s" % cpv)
24
			raise FatalError("invalid cpv: %s" % cpv)
25
		self._db = None
25
		self._db = None
26
		settings.setcpv(self._cpv)
26
		self._settings = settings
27
		self._settings = portage.config(clone=settings)
27
		self._settingslock = settingslock
28
28
29
	def get_name(self):
29
	def get_name(self):
30
		"""Returns base name of package, no category nor version"""
30
		"""Returns base name of package, no category nor version"""
Lines 44-50 Link Here
44
	def get_settings(self, key):
44
	def get_settings(self, key):
45
		"""Returns the value of the given key for this package (useful 
45
		"""Returns the value of the given key for this package (useful 
46
		for package.* files."""
46
		for package.* files."""
47
		return self._settings[key]
47
		self._settingslock.acquire()
48
		self._settings.setcpv(self._cpv)
49
		v = self._settings[key]
50
		self._settings.reset()
51
		self._settingslock.release()
52
		return v
48
53
49
	def get_cpv(self):
54
	def get_cpv(self):
50
		"""Returns full Category/Package-Version string"""
55
		"""Returns full Category/Package-Version string"""

Return to bug 90680