
On 13/10/10 16:40, Phil Mayers wrote:
On 13/10/10 15:55, Erik van Blokland wrote:
The code calls fork(), but no exec():
fork() with no exec() is legal Unix.
Various googling led me to:
http://trac.adium.im/ticket/13976#comment:28
"""The problem is that OSX since version 10.6 (Snow Leopard) does NOT allow processes launched via Dock (not via exec) to use fork() function, which is one used by Gadu-Gadu resolver. And stuff that crashes is NOT main Adium process, but resolver GG process, that is killed by OS itself. """
If that's the case, I don't think twistd will work in that situation. twistd expects to be able to fork() (unless you give the "-n" argument to keep it in the foreground)
Other info indicates this is Apple trying to be clever and "protect" applications from some signal handling issues surrounding fork() with libraries which aren't safe in that situation; presumably these are MacOS-specific libraries? If this really is true, then MacOS X is no longer posix-compliant in those circumstances, and Twisted is going to need some work :o( Can you share more details about the application; the context in which it is started, and which system libraries it's likely to load?