From 38c42d01fddbf14589d80f1f31400df0ce897045 Mon Sep 17 00:00:00 2001 From: Graham Knop Date: Tue, 30 Sep 2008 22:42:07 +0000 Subject: [PATCH] get upgrade.pl to fail properly if upgrade script dies --- sbin/upgrade.pl | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/sbin/upgrade.pl b/sbin/upgrade.pl index ddfd74be6..3302100d3 100644 --- a/sbin/upgrade.pl +++ b/sbin/upgrade.pl @@ -228,9 +228,14 @@ foreach my $filename (keys %config) { if ($upgrade{$upgrade}{pl} ne "") { my $pid = fork; if (!$pid) { - @ARGV = ("--configFile=$filename", $quiet ? ('--quiet') : ()); - $0 = $upgrade{$upgrade}{pl}; + local @ARGV = ("--configFile=$filename", $quiet ? ('--quiet') : ()); + local $0 = $upgrade{$upgrade}{pl}; + local $@; do $0; + if ($@) { + warn $@; + exit 255; + }; exit; } waitpid $pid, 0;