Skip to content
  • Kevin J. McCarthy's avatar
    Reset SIGPIPE signal handler in child process before exec(). · 80ed1d85
    Kevin J. McCarthy authored
    Ignored signals, such as SIGPIPE in Mutt, are inherited by child
    processes.  This can cause incorrect behavior in filter-like programs
    that expect SIGPIPE to be the default value of "Term".
    
    A couple other places in Mutt already reset SIGTERM, SIGTSTP, and
    SIGCONT, with a comment mentioning it really wasn't necessary.  Since
    I don't much like messing with signals, I'll leave those resets in.
    
    Extract those plus SIGPIPE into a new function,
    mutt_reset_child_signals() and add that before each exec call.
    
    Thanks to Vincent Lefèvre for reporting the issue and for the initial
    patch, which this commit is based upon.
    80ed1d85