[Zope-Checkins] SVN: Zope/trunk/lib/python/Zope2/Startup/zopectl.py Merged r40536 from 2.9 branch:

Florent Guillaume fg at nuxeo.com
Mon Dec 5 11:55:06 EST 2005


Log message for revision 40548:
  Merged r40536 from 2.9 branch:
  ObjectManager now has an hasObject method to test presence. This
  brings it in line with BTreeFolder.
  

Changed:
  U   Zope/trunk/lib/python/Zope2/Startup/zopectl.py

-=-
Modified: Zope/trunk/lib/python/Zope2/Startup/zopectl.py
===================================================================
--- Zope/trunk/lib/python/Zope2/Startup/zopectl.py	2005-12-05 16:50:14 UTC (rev 40547)
+++ Zope/trunk/lib/python/Zope2/Startup/zopectl.py	2005-12-05 16:55:05 UTC (rev 40548)
@@ -304,5 +304,13 @@
     #   If it is not reset, 'os.wait[pid]' can non-deterministically fail.
     #   Thus, use a way such that "SIGCHLD" is definitely reset in children.
     #signal.signal(signal.SIGCHLD, signal.SIG_IGN)
-    signal.signal(signal.SIGCHLD, _ignoreSIGCHLD)
+    if os.uname()[0] != 'Darwin':
+        # On Mac OS X, setting up a signal handler causes waitpid to
+        # raise EINTR, which is not preventable via the Python signal
+        # handler API and can't be dealt with properly as we can't pass
+        # the SA_RESTART to the signal API. Since Mac OS X doesn't
+        # appear to clutter up the process table with zombies if
+        # SIGCHILD is unset, just don't bother registering a SIGCHILD
+        # signal handler at all.
+        signal.signal(signal.SIGCHLD, _ignoreSIGCHLD)
     main()



More information about the Zope-Checkins mailing list