1 |
Author: zmedico |
2 |
Date: 2009-04-07 17:21:04 +0000 (Tue, 07 Apr 2009) |
3 |
New Revision: 13296 |
4 |
|
5 |
Modified: |
6 |
main/trunk/pym/portage/__init__.py |
7 |
Log: |
8 |
Fix some _doebuild_exit_status_check() calls so that they only happen when |
9 |
the bash process exits successfully (for consistency with usage elsewhere). |
10 |
When calling this functions, we're mainly concerned about false success, and |
11 |
we always want to allow things like using bashrc die hooks to clean up |
12 |
$PORTAGE_BUILDDIR for users that are building in tmpfs (in which case the |
13 |
exit status file may be removed before bash exits). |
14 |
|
15 |
|
16 |
Modified: main/trunk/pym/portage/__init__.py |
17 |
=================================================================== |
18 |
--- main/trunk/pym/portage/__init__.py 2009-04-07 01:27:54 UTC (rev 13295) |
19 |
+++ main/trunk/pym/portage/__init__.py 2009-04-07 17:21:04 UTC (rev 13296) |
20 |
@@ -4748,14 +4748,16 @@ |
21 |
|
22 |
if returnpid: |
23 |
return phase_retval |
24 |
- msg = _doebuild_exit_status_check(mydo, mysettings) |
25 |
- if msg: |
26 |
- phase_retval = 1 |
27 |
- from textwrap import wrap |
28 |
- from portage.elog.messages import eerror |
29 |
- for l in wrap(msg, 72): |
30 |
- eerror(l, phase=mydo, key=mysettings.mycpv) |
31 |
|
32 |
+ if phase_retval == os.EX_OK: |
33 |
+ msg = _doebuild_exit_status_check(mydo, mysettings) |
34 |
+ if msg: |
35 |
+ phase_retval = 1 |
36 |
+ from textwrap import wrap |
37 |
+ from portage.elog.messages import eerror |
38 |
+ for l in wrap(msg, 72): |
39 |
+ eerror(l, phase=mydo, key=mysettings.mycpv) |
40 |
+ |
41 |
_post_phase_userpriv_perms(mysettings) |
42 |
if mydo == "install": |
43 |
_check_build_log(mysettings) |
44 |
@@ -5027,13 +5029,14 @@ |
45 |
logfile=logfile, **kwargs) |
46 |
finally: |
47 |
pass |
48 |
- msg = _doebuild_exit_status_check(mydo, mysettings) |
49 |
- if msg: |
50 |
- rval = 1 |
51 |
- from textwrap import wrap |
52 |
- from portage.elog.messages import eerror |
53 |
- for l in wrap(msg, 72): |
54 |
- eerror(l, phase=mydo, key=mysettings.mycpv) |
55 |
+ if rval == os.EX_OK: |
56 |
+ msg = _doebuild_exit_status_check(mydo, mysettings) |
57 |
+ if msg: |
58 |
+ rval = 1 |
59 |
+ from textwrap import wrap |
60 |
+ from portage.elog.messages import eerror |
61 |
+ for l in wrap(msg, 72): |
62 |
+ eerror(l, phase=mydo, key=mysettings.mycpv) |
63 |
return rval |
64 |
|
65 |
_testing_eapis = frozenset(["3_pre1"]) |