On Thu, 22 Sep 2022 22:41:21 GMT, Roger Riggs <rri...@openjdk.org> wrote:
>> Clear the signal mask of the child when launching with posix_spawn. >> >> SIGQUIT signals are handled on non-Java Threads by the VM. >> For Java threads the signal mask blocks SIGQUIT. >> The ProcessBuilder uses posix_spawn on all platforms to create new processes. >> Without a specific request, the child process inherits the signal masks from >> the parent. > > Roger Riggs has updated the pull request incrementally with one additional > commit since the last revision: > > Move clearing of the signal mask to jspawnhelper so the launched > process gets a clear signal mask. test/jdk/java/lang/ProcessBuilder/UnblockSignals.java line 37: > 35: public static void main(String[] args) throws IOException, > InterruptedException { > 36: // Check that SIGQUIT is not masked, in previous releases it was > masked > 37: final ProcessBuilder pb = new ProcessBuilder("sleep", > "30").inheritIO(); SIGQUITing the child may leave a core dump. You may want to wrap the sleep in a shell call with ulimit to prevent that, e.g. `new ProcessBuilder("sh", "-c", "ulimit -c 0 && sleep 30");` ------------- PR: https://git.openjdk.org/jdk/pull/10379