I'm using reproc to start a process that daemonizes (it forks, the original process exits and the new child detaches). This results in the child process started by reproc remaining as a zombie. Reproc then waits for the new daemon process to end rather than returning right away when the original child exits. If I do the same thing but via a manual system() or execvp(), they return immediately when the child forks, which is the behavior I expect.
I'm using reproc to start a process that daemonizes (it forks, the original process exits and the new child detaches). This results in the child process started by reproc remaining as a zombie. Reproc then waits for the new daemon process to end rather than returning right away when the original child exits. If I do the same thing but via a manual system() or execvp(), they return immediately when the child forks, which is the behavior I expect.