summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-03-02 20:07:20 +0000
committerZac Medico <zmedico@gentoo.org>2007-03-02 20:07:20 +0000
commitb5616d53affeee118eef26836c287d439b1bce8b (patch)
tree93ceb78e6d80bdcbba8646729066f2b264f7533b
parentFor bug #168646, remove --prune-empty-dirs from PORTAGE_RSYNC_OPTS since it's... (diff)
downloadportage-multirepo-b5616d53affeee118eef26836c287d439b1bce8b.tar.gz
portage-multirepo-b5616d53affeee118eef26836c287d439b1bce8b.tar.bz2
portage-multirepo-b5616d53affeee118eef26836c287d439b1bce8b.zip
When emerge automatically resumes, add --ignore-default-opts to the command line in order to prevent things like --ask from leaking in via EMERGE_DEFAULT_OPTS. Thanks to Peter Weller <welp@gentoo.org> for reporting. (trunk r6132:6133)
svn path=/main/branches/2.1.2/; revision=6134
-rwxr-xr-xbin/emerge16
1 files changed, 14 insertions, 2 deletions
diff --git a/bin/emerge b/bin/emerge
index 5f23b0ce..5a842096 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -2923,7 +2923,12 @@ class MergeTask(object):
fetch_env["FEATURES"] = fetch_env.get("FEATURES", "") + " -cvs"
fetch_env["PORTAGE_NICENESS"] = "0"
fetch_args = [sys.argv[0], "--resume", "--fetchonly"]
- for myopt, myarg in self.myopts.iteritems():
+ resume_opts = self.myopts.copy()
+ # For automatic resume, we need to prevent
+ # any of bad_resume_opts from leaking in
+ # via EMERGE_DEFAULT_OPTS.
+ resume_opts["--ignore-default-opts"] = True
+ for myopt, myarg in resume_opts.iteritems():
if myopt not in bad_resume_opts:
if myarg is True:
fetch_args.append(myopt)
@@ -2932,6 +2937,8 @@ class MergeTask(object):
portage.portage_exec.spawn(fetch_args, env=fetch_env,
fd_pipes=fd_pipes, returnpid=True)
logfile.close() # belongs to the spawned process
+ del fetch_log, logfile, fd_pipes, fetch_env, fetch_args, \
+ resume_opts
mergecount=0
for x in mymergelist:
@@ -3180,7 +3187,12 @@ class MergeTask(object):
mtimedb.commit()
portage.run_exitfuncs()
mynewargv=[sys.argv[0],"--resume"]
- for myopt, myarg in self.myopts.iteritems():
+ resume_opts = self.myopts.copy()
+ # For automatic resume, we need to prevent
+ # any of bad_resume_opts from leaking in
+ # via EMERGE_DEFAULT_OPTS.
+ resume_opts["--ignore-default-opts"] = True
+ for myopt, myarg in resume_opts.iteritems():
if myopt not in bad_resume_opts:
if myarg is True:
mynewargv.append(myopt)