summaryrefslogtreecommitdiffstats
path: root/sys-utils/dmesg.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys-utils/dmesg.c')
-rw-r--r--sys-utils/dmesg.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys-utils/dmesg.c b/sys-utils/dmesg.c
index c1f84a568..df68c8440 100644
--- a/sys-utils/dmesg.c
+++ b/sys-utils/dmesg.c
@@ -639,8 +639,11 @@ static void safe_fwrite(const char *buf, size_t size, FILE *out)
rc = fwrite_hex(p, len, out);
else
rc = fwrite(p, 1, len, out) != len;
- if (rc != 0)
- err(EXIT_FAILURE, _("write failed"));
+ if (rc != 0) {
+ if (errno != EPIPE)
+ err(EXIT_FAILURE, _("write failed"));
+ exit(EXIT_SUCCESS);
+ }
}
}