summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancois Pons <fpons@mandriva.com>2003-09-11 12:57:23 +0000
committerFrancois Pons <fpons@mandriva.com>2003-09-11 12:57:23 +0000
commit2cd106904d4becd82bf6d2cf3f98b14b21aea60c (patch)
tree21967a8192c17144b7d6aa051828b0cbdda103de
parent253492f52af65de578c6798c48568f5c3a6df4f7 (diff)
downloaddrakx-2cd106904d4becd82bf6d2cf3f98b14b21aea60c.tar
drakx-2cd106904d4becd82bf6d2cf3f98b14b21aea60c.tar.gz
drakx-2cd106904d4becd82bf6d2cf3f98b14b21aea60c.tar.bz2
drakx-2cd106904d4becd82bf6d2cf3f98b14b21aea60c.tar.xz
drakx-2cd106904d4becd82bf6d2cf3f98b14b21aea60c.zip
wait for processes that need to be correctly finished before.
-rw-r--r--perl-install/install_steps.pm9
1 files changed, 5 insertions, 4 deletions
diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm
index b54098702..cd70bb3d5 100644
--- a/perl-install/install_steps.pm
+++ b/perl-install/install_steps.pm
@@ -379,9 +379,6 @@ sub installPackages($$) { #- complete REWORK, TODO and TOCHECK!
my ($o) = @_;
my $packages = $o->{packages};
- #- this method is always called, go here to close still opened rpm db.
- delete $packages->{rpmdb};
-
if (%{$packages->{state}{ask_remove} || {}}) {
log::l("removing : ", join ', ', keys %{$packages->{state}{ask_remove}});
pkgs::remove($o->{prefix}, [ keys %{$packages->{state}{ask_remove}} ], $packages);
@@ -468,7 +465,7 @@ Consoles 1,3,4,7 may also contain interesting information";
run_program::rooted($o->{prefix}, "touch", "/etc/menu/do-not-create-menu-link");
}
#- call update-menus at the end of package installation
- run_program::rooted($o->{prefix}, "update-menus");
+ push @{$o->{waitpids}}, run_program::raw({ root => $o->{prefix}, detach => 1 }, "update-menus", "-n");
if ($o->{pcmcia}) {
substInFile { s/.*(TaskBarShowAPMStatus).*/$1=1/ } "$o->{prefix}/usr/lib/X11/icewm/preferences";
@@ -1065,6 +1062,10 @@ Beware that some Mandrake tools rely on the contents of some
of these files... so remove any file from here at your own
risk!
" };
+ #- wait for remainging processes.
+ foreach (@{$o->{waitpids}}) {
+ waitpid $_, 0;
+ }
install_any::unlockCdrom();
install_any::log_sizes($o);
}