]> git.saurik.com Git - wxWidgets.git/commitdiff
Check whether SA_RESTART is defined and don't use it if it isn't.
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 20 Mar 2010 12:45:43 +0000 (12:45 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 20 Mar 2010 12:45:43 +0000 (12:45 +0000)
SA_RESTART is not defined for QNX and not only VMS so test for it directly
instead of testing for the platform.

See #11817.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/unix/appunix.cpp

index 1c89ecf7e4f54d9a887d36cfb4d6a18aad91b49c..8e8e9e77f350ab8cdabbb38c2a5cb8b04ef6f6aa 100644 (file)
 #include <signal.h>
 #include <unistd.h>
 
+#ifndef SA_RESTART
+    // don't use for systems which don't define it (at least VMS and QNX)
+    #define SA_RESTART
+#endif
+
 // use unusual names for arg[cv] to avoid clashes with wxApp members with the
 // same names
 bool wxAppConsole::Initialize(int& argc_, wxChar** argv_)
@@ -78,12 +83,8 @@ bool wxAppConsole::SetSignalHandler(int signal, SignalHandler handler)
     struct sigaction sa;
     memset(&sa, 0, sizeof(sa));
     sa.sa_handler = (SignalHandler_t)&wxAppConsole::HandleSignal;
-#ifdef __VMS
-   sa.sa_flags = 0;
-#else
-   sa.sa_flags = SA_RESTART;
-#endif
-   int res = sigaction(signal, &sa, 0);
+    sa.sa_flags = SA_RESTART;
+    int res = sigaction(signal, &sa, 0);
     if ( res != 0 )
     {
         wxLogSysError(_("Failed to install signal handler"));