blob: 28202484948932f2afcfce5222cdcb4bae04d4f0 [file] [log] [blame]
--- a/coreutils/echo.c 2014-09-28 20:44:19.024670523 -0700
+++ b/coreutils/echo.c 2014-09-28 20:46:14.278666374 -0700
@@ -31,6 +31,7 @@
int echo_main(int argc UNUSED_PARAM, char **argv)
{
+ int ret;
const char *arg;
#if !ENABLE_FEATURE_FANCY_ECHO
enum {
@@ -101,7 +102,9 @@
if (!eflag) {
/* optimization for very common case */
- fputs(arg, stdout);
+ ret = fputs(arg, stdout);
+ if (ret == EOF)
+ perror("echo failed");
} else while ((c = *arg++)) {
if (c == eflag) { /* Check for escape seq. */
if (*arg == 'c') {
@@ -141,7 +144,11 @@
bb_putchar('\n');
}
ret:
- return fflush_all();
+ errno = 0;
+ ret = fflush_all();
+ if (errno)
+ perror("echo failed");
+ return ret;
}
/*-