diff options
author | Zac Medico <zmedico@gentoo.org> | 2008-07-06 06:48:41 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2008-07-06 06:48:41 +0000 |
commit | 0398e93df485e7953ff418e45f2eedf112d6280f (patch) | |
tree | 73f8abb0367239a573c74e9b45e7e2d7583c1db7 | |
parent | df3b03cfcf30e35951118ba00981eb7868cab4aa (diff) | |
download | portage-0398e93df485e7953ff418e45f2eedf112d6280f.tar.gz portage-0398e93df485e7953ff418e45f2eedf112d6280f.tar.bz2 portage-0398e93df485e7953ff418e45f2eedf112d6280f.zip |
* Fix broke return code handling from previous commit, in
MergeListItem.execute().
* Fix TaskSequence._task_exit_handler() so it won't call
final_exit() if _default_exit() has already set
self._current_task to None.
svn path=/main/trunk/; revision=10954
-rw-r--r-- | pym/_emerge/__init__.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index e750e7645..b1fca922f 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -1607,8 +1607,9 @@ class TaskSequence(CompositeTask): self._task_exit_handler) def _task_exit_handler(self, task): - if self._default_exit(task) == os.EX_OK and \ - self._task_queue: + if self._default_exit(task) != os.EX_OK: + pass + elif self._task_queue: self._start_next_task() else: self._final_exit(task) @@ -2781,6 +2782,9 @@ class MergeListItem(SlotObject): retval = build.install() + if retval != os.EX_OK: + return retval + elif pkg.type_name == "binary": binpkg = Binpkg(find_blockers=find_blockers, |