From 7bddba3b45857cae94b1cfed4af8ab14047eddfd Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Tue, 18 Jun 2013 17:50:33 +0000 Subject: workaround crash with glib-2.36+ (mga#10289) we basically wait for glib to have created its worker thread before setting our SIG_CHLD handler (see also https://bugzilla.gnome.org/show_bug.cgi?id=698081) --- NEWS | 2 ++ control-center | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 9c71505e..9c859596 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,5 @@ +- workaround crash with glib-2.36+ (mga#10289) + Version 12.38 - 21 Apr 2013 Thierry Vignaud - translations updates diff --git a/control-center b/control-center index 47ffa2fa..990deaa1 100755 --- a/control-center +++ b/control-center @@ -1087,11 +1087,11 @@ $wait_darea->realize; $SIG{USR1} = 'IGNORE'; $SIG{USR2} = 'IGNORE'; $SIG{TERM} = \&quit_global; -$SIG{CHLD} = \&sig_child; + $window_splash->destroy; undef $window_splash; -Glib::Timeout->add(200, sub { sig_child('CHLD', 1); 1 }); +Glib::Timeout->add(300, sub { $SIG{CHLD} = \&sig_child; sig_child('CHLD', 1); 1 }); if ($program) { if (my $sub = $tool_callbacks{$program}) { -- cgit v1.2.1