From a42538f666f524e51abdcf31f33deac8d78a3877 Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Mon, 3 Sep 2012 17:29:30 +0000 Subject: (installPackages) prevent going further if some transactions failed (mga#7016) (_install_raw,install) propagate exit code --- perl-install/install/steps.pm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'perl-install/install/steps.pm') diff --git a/perl-install/install/steps.pm b/perl-install/install/steps.pm index d595888c9..748db7280 100644 --- a/perl-install/install/steps.pm +++ b/perl-install/install/steps.pm @@ -427,6 +427,7 @@ sub installPackages { #- small transaction will be built based on this selection and depslist. my @toInstall = install::pkgs::packagesToInstall($packages); + my $exit_code; my $time = time(); { local $ENV{DURING_INSTALL} = 1; @@ -434,13 +435,14 @@ sub installPackages { local $ENV{TMP} = '/tmp'; local $ENV{HOME}; local $packages->{options}{auto} = !$o_interactive; - install::pkgs::install($o->{isUpgrade}, \@toInstall, $packages, \&installCallback); + $exit_code = install::pkgs::install($o->{isUpgrade}, \@toInstall, $packages, \&installCallback); } any::writeandclean_ldsoconf($::prefix); log::l("Install took: ", formatTimeRaw(time() - $time)); run_program::rooted_or_die($::prefix, 'ldconfig') if !$o->{justdb}; + $exit_code and die "Installation failed"; install::media::log_sizes(); scalar(@toInstall); #- return number of packages installed. } -- cgit v1.2.1