diff options
| author | Mike Frysinger <vapier@gentoo.org> | 2010-11-23 19:54:02 -0500 |
|---|---|---|
| committer | Michal Marek <mmarek@suse.cz> | 2010-12-14 09:06:04 -0500 |
| commit | 2979076fbf17a0947d6eba367b0cac19c907c160 (patch) | |
| tree | a6491d3867e0b953453dee28ffca79da06deb0df /scripts | |
| parent | 43f901fbc8ba94bfa8d58155ba9378d7a13af636 (diff) | |
headers_install: check exit status of unifdef
If unifdef fails for any reason (like segfaulting), we should be aborting
the install steps. So check its exit status in this unlikely scenario.
Reported-by: Diego Elio Pettenò <flameeyes@gentoo.org>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/headers_install.pl | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/scripts/headers_install.pl b/scripts/headers_install.pl index 4ca3be3b2e50..efb3be10d428 100644 --- a/scripts/headers_install.pl +++ b/scripts/headers_install.pl | |||
| @@ -45,6 +45,13 @@ foreach my $file (@files) { | |||
| 45 | close $in; | 45 | close $in; |
| 46 | 46 | ||
| 47 | system $unifdef . " $tmpfile > $installdir/$file"; | 47 | system $unifdef . " $tmpfile > $installdir/$file"; |
| 48 | # unifdef will exit 0 on success, and will exit 1 when the | ||
| 49 | # file was processed successfully but no changes were made, | ||
| 50 | # so abort only when it's higher than that. | ||
| 51 | my $e = $? >> 8; | ||
| 52 | if ($e > 1) { | ||
| 53 | die "$tmpfile: $!\n"; | ||
| 54 | } | ||
| 48 | unlink $tmpfile; | 55 | unlink $tmpfile; |
| 49 | } | 56 | } |
| 50 | exit 0; | 57 | exit 0; |
