Re: [PATCH v2] submodule status: propagate SIGPIPE
"Phillip Wood via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 29 quoted lines
> From: Phillip Wood <phillip.wood@dunelm.org.uk>
>
> It has been reported than running
>
> git submodule status --recurse | grep -q ^+
>
> results in an unexpected error message
>
> fatal: failed to recurse into submodule $submodule
>
> When "git submodule--helper" recurses into a submodule it creates a
> child process. If that process fails then the error message above is
> displayed by the parent. In the case above the child is killed by
> SIGPIPE as "grep -q" exits as soon as it sees the first match. Fix this
> by propagating SIGPIPE so that it is visible to the process running
> git. We could propagate other signals but I'm not sure there is much
> value in doing that. In the common case of the user pressing Ctrl-C or
> Ctrl-\ then SIGINT or SIGQUIT will be sent to the foreground process
> group and so the parent process will receive the same signal as the
> child.
>
> Reported-by: Matt Liberty <mliberty@precisioninno.com>
> Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
> ---
> submodule status: propagate SIGPIPE
>
> Note that I haven't checked if any other submodule subcommands are
> affected by this - I'll leave that to someone more familiar with the
> code.