]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/corefoundation/utilsexc_cf.cpp
Minor header cleaning.
[wxWidgets.git] / src / mac / corefoundation / utilsexc_cf.cpp
index a8db1a3c853bc146d887700b8d02659b7ac86b29..f9f52276607d3816fd6c74e5b1743ee7580f3cc0 100644 (file)
@@ -21,6 +21,8 @@
 #include "wx/thread.h"
 #include "wx/process.h"
 
+#include <sys/wait.h>
+
 // Use polling instead of Mach ports, which doesn't work on Intel
 // due to task_for_pid security issues.
 
@@ -33,6 +35,7 @@
 
 #if USE_POLLING
 
+#if wxUSE_THREADS
 class wxProcessTerminationEventHandler: public wxEvtHandler
 {
   public:
@@ -115,11 +118,17 @@ int wxAddProcessCallbackForPid(wxEndProcessData *proc_data, int pid)
 
     return 0;
 }
+#else // !wxUSE_THREADS
+int wxAddProcessCallbackForPid(wxEndProcessData*, int)
+{
+    wxLogDebug(wxT("Could not create termination detection thread."));
+    return -1;
+}
+#endif // wxUSE_THREADS/!wxUSE_THREADS
 
-#else
+#else // !USE_POLLING
 
 #include <CoreFoundation/CFMachPort.h>
-#include <sys/wait.h>
 extern "C" {
 #include <mach/mach.h>
 }
@@ -132,13 +141,13 @@ void wxMAC_MachPortEndProcessDetect(CFMachPortRef port, void *data)
     int rc = waitpid(abs(proc_data->pid), &status, WNOHANG);
     if(!rc)
     {
-       wxLogDebug(wxT("Mach port was invalidated, but process hasn't terminated!"));
-       return;
+        wxLogDebug(wxT("Mach port was invalidated, but process hasn't terminated!"));
+        return;
     }
     if((rc != -1) && WIFEXITED(status))
-       proc_data->exitcode = WEXITSTATUS(status);
+        proc_data->exitcode = WEXITSTATUS(status);
     else
-       proc_data->exitcode = -1;
+        proc_data->exitcode = -1;
     wxHandleProcessTermination(proc_data);
 }
 
@@ -210,7 +219,7 @@ int wxAddProcessCallbackForPid(wxEndProcessData *proc_data, int pid)
     return 0;
 }
 
-#endif // USE_POLLING
+#endif // USE_POLLING/!USE_POLLING
 
 // NOTE: This doesn't really belong here but this was a handy file to
 // put it in because it's already compiled for wxCocoa and wxMac GUI lib.