diff --git a/components/core/src/os/process/exec/unix.rs b/components/core/src/os/process/exec/unix.rs index 8e5507307e7..d854c9303d7 100644 --- a/components/core/src/os/process/exec/unix.rs +++ b/components/core/src/os/process/exec/unix.rs @@ -37,6 +37,15 @@ pub fn hook_command(executable: X, env: I, ids: Option<(Uid, Gid)>) with_user_and_group_information(&mut cmd, uid, gid); } + unsafe { + use nix::sys::signal::{pthread_sigmask, SigSet, SigmaskHow}; + cmd.pre_exec(|| { + let newset = SigSet::all(); + pthread_sigmask(SigmaskHow::SIG_UNBLOCK, Some(&newset), None)?; + Ok(()) + }); + } + cmd }