Formal Review of std.process

Graham St Jack graham.stjack at internode.on.net
Sun Apr 7 22:22:04 PDT 2013


Not sure if this is the right place for this, but I have found a 
problem in my fairly old version of the new process module. The 
problem was in the POSIX spawnProcessImpl() just after the fork() 
call in the child process branch.

The child would occasionally block forever on an attempt by the D 
code to lock a mutex.

The problem went away when I moved the toStringx() and toArgz() 
calls to before the fork() call.

I have no idea what is going on here, but it seems like fork() 
leaves the child in bad shape, so my 'fix' is very much a 
band-aid.


More information about the Digitalmars-d mailing list