get upgrade.pl to fail properly if upgrade script dies

This commit is contained in:
Graham Knop 2008-09-30 22:42:07 +00:00
parent dec515d1cf
commit 38c42d01fd

View file

@ -228,9 +228,14 @@ foreach my $filename (keys %config) {
if ($upgrade{$upgrade}{pl} ne "") { if ($upgrade{$upgrade}{pl} ne "") {
my $pid = fork; my $pid = fork;
if (!$pid) { if (!$pid) {
@ARGV = ("--configFile=$filename", $quiet ? ('--quiet') : ()); local @ARGV = ("--configFile=$filename", $quiet ? ('--quiet') : ());
$0 = $upgrade{$upgrade}{pl}; local $0 = $upgrade{$upgrade}{pl};
local $@;
do $0; do $0;
if ($@) {
warn $@;
exit 255;
};
exit; exit;
} }
waitpid $pid, 0; waitpid $pid, 0;