Oops!  I forgot the second part of my patch.  The problem with SA_NOMASK is
also present in app/main.c:

--- app/main.c~ Mon May  1 19:43:09 2000
+++ app/main.c  Tue May  2 17:49:05 2000
@@ -334,15 +334,15 @@
 
   /* Handle some signals */
 
-  gimp_signal_private (SIGHUP,  on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGINT,  on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGQUIT, on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGABRT, on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGBUS,  on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGSEGV, on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGPIPE, on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGTERM, on_signal, SA_RESETHAND | SA_NOMASK);
-  gimp_signal_private (SIGFPE,  on_signal, SA_RESETHAND | SA_NOMASK);
+  gimp_signal_private (SIGHUP,  on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGINT,  on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGQUIT, on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGABRT, on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGBUS,  on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGSEGV, on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGPIPE, on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGTERM, on_signal, SA_RESETHAND | SA_NODEFER);
+  gimp_signal_private (SIGFPE,  on_signal, SA_RESETHAND | SA_NODEFER);
 
 #ifndef __EMX__ /* OS/2 may not support SA_NOCLDSTOP -GRO */
 

Reply via email to