* plugbasedclient.c (struct process): New fields "eof", "completed", and "status". (handle_sigchld): New function. (main): Initialize "dir" to NULL to only closedir() it if necessary. Move "process_list" to be a global variable to be accessible by "handle_sigchld". Make "handle_sigchld" handle SIGCHLD. Remove redundant check for NULL "dir". Free "filename" when no longer used. Block SIGCHLD around fork()/exec(). Restore normal signals in child. Only loop while running processes exist. Print process buffer when the process is done and it has emitted EOF, not when it only emits EOF. Remove processes from list which exit non-cleanly. In cleaning up, closedir() if necessary. Bug fix: set next pointer correctly when freeing process list.
* plugins.d/passprompt.c (main): Do not ignore SIGQUIT.