[Evolution-hackers] Question about defunc processes produced by libsoup on Solaris



Hi Hackers,
   We met a problem when using libsoup.
In the funciton soup-ssl.c : soup_get_ssl_iochannel_real, it uses fork() and exec() to create a child progress to complete the secure connection establishment by execute soup_ssl_proxy. This works well on Linux, however, on Solaris we find that it will produce a lot of defunct processes there before the parent process ends. And we have noticed that there is a waitpid () call if G_IO_HUP|G_IO_ERR|G_IO_NVAL matches. However, if there is no such error signal returns, why the parent do not call waitpid () to waiting the child process? AFAIK, it would make child pocesses become zombie if the parent neither end before the child
nor wait for it.
Any idea?
Thanks,

-Sean





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]