summaryrefslogtreecommitdiffstats
path: root/pym/portage
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-08-14 08:25:45 -0700
committerZac Medico <zmedico@gentoo.org>2010-08-14 08:25:45 -0700
commit553c12294d16a652109d14a43ce4fdf7bc73ebea (patch)
tree1911a1de75757571f6d74ffaf88f3890c3339be0 /pym/portage
parent1b667b6bf20ed8991e198ac686afe6354715846b (diff)
downloadportage-553c12294d16a652109d14a43ce4fdf7bc73ebea.tar.gz
portage-553c12294d16a652109d14a43ce4fdf7bc73ebea.tar.bz2
portage-553c12294d16a652109d14a43ce4fdf7bc73ebea.zip
Fix EbuildSpawnProcess to use self.settings.environ() for the spawn
environment, so all AbstractEbuildProcess subclasses are consistent in this way.
Diffstat (limited to 'pym/portage')
-rw-r--r--pym/portage/package/ebuild/doebuild.py23
1 files changed, 9 insertions, 14 deletions
diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py
index 7405b6f12..e85785528 100644
--- a/pym/portage/package/ebuild/doebuild.py
+++ b/pym/portage/package/ebuild/doebuild.py
@@ -1053,17 +1053,7 @@ def spawn(mystring, mysettings, debug=0, free=0, droppriv=0, sesandbox=0, fakero
1. The return code of the spawned process.
"""
- if isinstance(mysettings, dict):
- env=mysettings
- keywords["opt_name"]="[ %s ]" % "portage"
- else:
- check_config_instance(mysettings)
- env=mysettings.environ()
- if mysettings.mycpv is not None:
- keywords["opt_name"] = "[%s]" % mysettings.mycpv
- else:
- keywords["opt_name"] = "[%s/%s]" % \
- (mysettings.get("CATEGORY",""), mysettings.get("PF",""))
+ check_config_instance(mysettings)
fd_pipes = keywords.get("fd_pipes")
if fd_pipes is None:
@@ -1098,6 +1088,12 @@ def spawn(mystring, mysettings, debug=0, free=0, droppriv=0, sesandbox=0, fakero
if not free and not (fakeroot or portage.process.sandbox_capable):
free = True
+ if mysettings.mycpv is not None:
+ keywords["opt_name"] = "[%s]" % mysettings.mycpv
+ else:
+ keywords["opt_name"] = "[%s/%s]" % \
+ (mysettings.get("CATEGORY",""), mysettings.get("PF",""))
+
if free or "SANDBOX_ACTIVE" in os.environ:
keywords["opt_name"] += " bash"
spawn_func = portage.process.spawn_bash
@@ -1114,12 +1110,11 @@ def spawn(mystring, mysettings, debug=0, free=0, droppriv=0, sesandbox=0, fakero
mysettings["PORTAGE_SANDBOX_T"])
if keywords.get("returnpid"):
- return spawn_func(mystring, env=env, **keywords)
+ return spawn_func(mystring, env=mysettings.environ(), **keywords)
sched = TaskScheduler()
proc = EbuildSpawnProcess(
- background=False,
- args=mystring, env=env,
+ background=False, args=mystring,
scheduler=sched.sched_iface, spawn_func=spawn_func,
settings=mysettings, **keywords)