summaryrefslogtreecommitdiffstats
path: root/perl-install/install2.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/install2.pm')
-rw-r--r--perl-install/install2.pm30
1 files changed, 20 insertions, 10 deletions
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index af40b5a3e..73d7071e5 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -479,7 +479,8 @@ sub exitInstall { $o->exitInstall(getNextStep() eq "exitInstall") }
#-######################################################################################
sub main {
$SIG{__DIE__} = sub { chomp(my $err = $_[0]); log::l("warning: $err") };
- $SIG{SEGV} = sub { my $msg = "Seems like memory is missing as the install crashes"; print "$msg\n"; log::l($msg);
+ $SIG{SEGV} = sub { my $msg = "segmentation fault: seems like memory is missing as the install crashes"; print "$msg\n"; log::l($msg);
+ require install_steps_auto_install;
install_steps_auto_install::errorInStep();
};
@@ -590,15 +591,24 @@ sub main {
#- needed very early for install_steps_gtk
eval { ($o->{mouse}, $o->{wacom}) = mouse::detect() } unless $o->{nomouseprobe} || $o->{mouse};
- $::o = $o = $::auto_install ?
- install_steps_auto_install->new($o) :
- $o->{interactive} eq "stdio" ?
- install_steps_stdio->new($o) :
- $o->{interactive} eq "newt" ?
- install_steps_newt->new($o) :
- $o->{interactive} eq "gtk" ?
- install_steps_gtk->new($o) :
- die "unknown install type";
+ my $o_;
+ while (1) {
+ require"install_steps_$o->{interactive}.pm";
+ $o_ = $::auto_install ?
+ install_steps_auto_install->new($o) :
+ $o->{interactive} eq "stdio" ?
+ install_steps_stdio->new($o) :
+ $o->{interactive} eq "newt" ?
+ install_steps_newt->new($o) :
+ $o->{interactive} eq "gtk" ?
+ install_steps_gtk->new($o) :
+ die "unknown install type";
+ $o_ and last;
+
+ $o->{interactive} = "newt";
+ require install_steps_newt;
+ }
+ $::o = $o = $o_;
$o->{netc} = network::read_conf("/tmp/network");
if (my ($file) = glob_('/tmp/ifcfg-*')) {