From: Rob Landley Date: Tue, 24 Jul 2012 04:38:34 +0000 (-0500) Subject: Workaround longstanding glibc/ld bug, ala http://sources.redhat.com/bugzilla/show_bug... X-Git-Tag: 0.4.0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=07d79af7182c130858a84274718f9d0c84d15109;p=platform%2Fupstream%2Ftoybox.git Workaround longstanding glibc/ld bug, ala sources.redhat.com/bugzilla/show_bug.cgi?id=3400, which prevents "./toybox | wc" from producing any output when toybox was statically linked. --- diff --git a/lib/lib.c b/lib/lib.c index 69029a2..e7dc45e 100644 --- a/lib/lib.c +++ b/lib/lib.c @@ -160,7 +160,7 @@ void xputs(char *s) void xputc(char c) { - if (EOF == fputc(c, stdout)) perror_exit("write"); + if (EOF == fputc(c, stdout) || fflush(stdout)) perror_exit("write"); } void xflush(void) diff --git a/main.c b/main.c index 1b1f0fc..f599418 100644 --- a/main.c +++ b/main.c @@ -133,12 +133,12 @@ void toybox_main(void) } len += printf("%s ",toy_list[i].name); if (len>65) { - putchar('\n'); + xputc('\n'); len=0; } } } - putchar('\n'); + xputc('\n'); } int main(int argc, char *argv[])