diff options
author | Denys Vlasenko | 2009-11-02 14:19:51 +0100 |
---|---|---|
committer | Denys Vlasenko | 2009-11-02 14:19:51 +0100 |
commit | 8131eea3dce5fba0dfb78e6083d1730423fad20b (patch) | |
tree | c098d7ba6ef9f4745425a29a330480e6088d6d9a /shell/ash.c | |
parent | 0d8ea64af618dc83c3291b3b598636ed3d0854e4 (diff) | |
download | busybox-8131eea3dce5fba0dfb78e6083d1730423fad20b.zip busybox-8131eea3dce5fba0dfb78e6083d1730423fad20b.tar.gz |
*: introduce and use ffulsh_all()
function old new delta
buffer_fill_and_print 179 196 +17
fflush_all - 9 +9
spawn 87 92 +5
rtcwake_main 455 453 -2
...
alarm_intr 93 84 -9
readcmd 1072 1062 -10
bb_ask 345 333 -12
more_main 845 832 -13
flush_stdout_stderr 42 23 -19
xfflush_stdout 27 - -27
flush_stderr 30 - -30
------------------------------------------------------------------------------
(add/remove: 1/2 grow/shrink: 2/50 up/down: 31/-397) Total: -366 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/ash.c')
-rw-r--r-- | shell/ash.c | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/shell/ash.c b/shell/ash.c index 481b841..6b985ad 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -389,16 +389,7 @@ static void flush_stdout_stderr(void) { INT_OFF; - fflush(stdout); - fflush(stderr); - INT_ON; -} - -static void -flush_stderr(void) -{ - INT_OFF; - fflush(stderr); + fflush_all(); INT_ON; } @@ -451,7 +442,7 @@ static void out2str(const char *p) { outstr(p, stderr); - flush_stderr(); + flush_stdout_stderr(); } @@ -8184,7 +8175,7 @@ evaltree(union node *n, int flags) default: #if DEBUG out1fmt("Node type = %d\n", n->type); - fflush(stdout); + fflush_all(); break; #endif case NNOT: @@ -9101,7 +9092,7 @@ evalcommand(union node *cmd, int flags) for (;;) { find_command(argv[0], &cmdentry, cmd_flag, path); if (cmdentry.cmdtype == CMDUNKNOWN) { - flush_stderr(); + flush_stdout_stderr(); status = 127; goto bail; } |