From 87279d1906a91a4d5963ebe1a05600b23485a7e1 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Wed, 7 Mar 2001 11:02:14 +0000 Subject: (main): save $@ in $err so that it's not modified before being used --- perl-install/install2.pm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'perl-install') diff --git a/perl-install/install2.pm b/perl-install/install2.pm index 245e3fd80..a2284b8da 100644 --- a/perl-install/install2.pm +++ b/perl-install/install2.pm @@ -558,10 +558,11 @@ sub main { eval { &{$install2::{$o->{step}}}($clicked, $o->{steps}{$o->{step}}{entered}); }; + my $err = $@; $o->kill_action; $clicked = 0; - while ($@) { - local $_ = $@; + if ($err) { + local $_ = $err; $o->kill_action; if (/^setstep (.*)/) { $o->{step} = $1; @@ -572,7 +573,8 @@ sub main { /^theme_changed$/ and redo MAIN; unless (/^already displayed/) { eval { $o->errorInStep($_) }; - $@ and next; + $err = $@; + $err and next; } $o->{step} = $o->{steps}{$o->{step}}{onError}; next MAIN unless $o->{steps}{$o->{step}}{reachable}; #- sanity check: avoid a step not reachable on error. -- cgit v1.2.1