diff options
Diffstat (limited to 'lib/mixlib/shellout/unix.rb')
-rw-r--r-- | lib/mixlib/shellout/unix.rb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/mixlib/shellout/unix.rb b/lib/mixlib/shellout/unix.rb index be2e66a..bd9169f 100644 --- a/lib/mixlib/shellout/unix.rb +++ b/lib/mixlib/shellout/unix.rb @@ -305,7 +305,10 @@ module Mixlib # support the "ONESHOT" optimization (where sh -c does exec without # forking). To support cleaning up all the children, we need to # ensure they're in a unique process group. - Process.setsid + # We cannot use setsid here since getpgid fails on AIX with EPERM + # when parent and child have different sessions and the parent tries to get the process group, + # hence we just create a new process group, and have the same session. + Process.setpgrp configure_subprocess_file_descriptors |