Many of the interestingness scripts use timed_run to implement timeout support. When timeout occurs, subprocess.Popen.kill() is called, which uses SIGKILL. If the subprocess is a wrapper script, no cleanup can occur since SIGKILL cannot be handled. We should try SIGINT or SIGTERM first to give the child a chance to cleanup.
Concretely, if run with ffpuppet as a subprocess, this leaves orphaned Firefox (and Xvfb if --xvfb is used) processes on every timeout.
Many of the interestingness scripts use
timed_runto implement timeout support. When timeout occurs,subprocess.Popen.kill()is called, which usesSIGKILL. If the subprocess is a wrapper script, no cleanup can occur sinceSIGKILLcannot be handled. We should trySIGINTorSIGTERMfirst to give the child a chance to cleanup.Concretely, if run with ffpuppet as a subprocess, this leaves orphaned Firefox (and Xvfb if
--xvfbis used) processes on every timeout.