summaryrefslogtreecommitdiffhomepage
path: root/printutils
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2008-02-26 20:23:02 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2008-02-26 20:23:02 +0000
commit7be1030dcce0956d8bf12166c7a6fedbb1209169 (patch)
tree06f1611d61f6d225806cbabbb43d01792d87c471 /printutils
parentbe048f21e62f18ddc5d1d135b8fe27f4e23d7bd2 (diff)
lpr: fflush stdout fix
Diffstat (limited to 'printutils')
-rw-r--r--printutils/lpr.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/printutils/lpr.c b/printutils/lpr.c
index 09fbc6ad1..913da6f0f 100644
--- a/printutils/lpr.c
+++ b/printutils/lpr.c
@@ -130,6 +130,7 @@ int lpqr_main(int argc, char *argv[])
cmd = (opts & LPQ_SHORT_FMT) ? 3 : 4;
command:
printf("%c" "%s\n", cmd, queue);
+ fflush(stdout);
bb_copyfd_eof(STDOUT_FILENO, old_stdout);
}
@@ -225,6 +226,7 @@ int lpqr_main(int argc, char *argv[])
st.st_size = 0; /* paranoia: fstat may theoretically fail */
fstat(fd, &st);
printf("\x3" "%"OFF_FMT"u d%s\n", st.st_size, remote_filename);
+ fflush(stdout);
if (bb_copyfd_size(fd, STDOUT_FILENO, st.st_size) != st.st_size) {
// We're screwed. We sent less bytes than we advertised.
bb_error_msg_and_die("local file changed size?!");