diff options
author | Thierry Vignaud <tvignaud@mandriva.org> | 2005-07-19 05:50:28 +0000 |
---|---|---|
committer | Thierry Vignaud <tvignaud@mandriva.org> | 2005-07-19 05:50:28 +0000 |
commit | e87d25b03542939cc97314e65bfed6aa611a47ae (patch) | |
tree | d441a4c0aeacfeb451950cbb48ba6bad7e9611a3 | |
parent | e65aceea2b48b05599fe29c78847b52501eebbd4 (diff) | |
download | drakx-e87d25b03542939cc97314e65bfed6aa611a47ae.tar drakx-e87d25b03542939cc97314e65bfed6aa611a47ae.tar.gz drakx-e87d25b03542939cc97314e65bfed6aa611a47ae.tar.bz2 drakx-e87d25b03542939cc97314e65bfed6aa611a47ae.tar.xz drakx-e87d25b03542939cc97314e65bfed6aa611a47ae.zip |
really reap zombie children; side-effect: we can now run a second
config tool again (#16851)
-rwxr-xr-x | perl-install/standalone/harddrake2 | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/perl-install/standalone/harddrake2 b/perl-install/standalone/harddrake2 index c762777f7..4a448ee08 100755 --- a/perl-install/standalone/harddrake2 +++ b/perl-install/standalone/harddrake2 @@ -441,12 +441,13 @@ foreach (@classes) { $tree->expand_row($tree_model->get_path($parent_iter), 1) unless $title eq N("Unknown/Others"); } -$SIG{CHLD} = sub { +sub reap_children() { undef $pid; # reap zombies my $child_pid; do { $child_pid = waitpid(-1, POSIX::WNOHANG) } until $child_pid > 0; }; +$SIG{CHLD} = \&reap_children; $w->{rwindow}->signal_connect(delete_event => \&quit_global); $w->{rwindow}->set_position('center') unless $::isEmbedded; @@ -480,6 +481,7 @@ $_->hide foreach $module_cfg_button, $config_button; # hide buttons while no dev } } } +$SIG{CHLD} = \&reap_children; undef $wait; gtkset_mousecursor_normal(); |