aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/exec.cpp
diff options
context:
space:
mode:
authorGravatar Andy Lutomirski <luto@kernel.org>2015-09-15 18:24:11 -0700
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2015-12-10 01:02:57 -0800
commitf17a71de746360822104b6cfeac1fbcad2c8f294 (patch)
tree7d60c09e980c491e864a4d420b35a38c13e4364c /src/exec.cpp
parent0212314479b12b49b7149db0aa17330e94d7c4e4 (diff)
Don't complain if do_builtin_io fails due to EPIPE
If stdio is dead due to EPIPE, there's no great reason to spew a stack dump. This will still write an error to stderr if stdout dies. This might be undesirable, but changing that should be considered separately.
Diffstat (limited to 'src/exec.cpp')
-rw-r--r--src/exec.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/exec.cpp b/src/exec.cpp
index 63186ef7..bd9f9fb5 100644
--- a/src/exec.cpp
+++ b/src/exec.cpp
@@ -1181,7 +1181,7 @@ void exec_job(parser_t &parser, job_t *j)
const std::string outbuff = wcs2string(stdout_buffer);
const std::string errbuff = wcs2string(stderr_buffer);
bool builtin_io_done = do_builtin_io(outbuff.data(), outbuff.size(), errbuff.data(), errbuff.size());
- if (! builtin_io_done)
+ if (! builtin_io_done && errno != EPIPE)
{
show_stackframe();
}