diff options
| author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-02-26 20:23:02 +0000 |
|---|---|---|
| committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-02-26 20:23:02 +0000 |
| commit | 7be1030dcce0956d8bf12166c7a6fedbb1209169 (patch) | |
| tree | 06f1611d61f6d225806cbabbb43d01792d87c471 | |
| parent | be048f21e62f18ddc5d1d135b8fe27f4e23d7bd2 (diff) | |
| download | busybox-w32-7be1030dcce0956d8bf12166c7a6fedbb1209169.tar.gz busybox-w32-7be1030dcce0956d8bf12166c7a6fedbb1209169.tar.bz2 busybox-w32-7be1030dcce0956d8bf12166c7a6fedbb1209169.zip | |
lpr: fflush stdout fix
| -rw-r--r-- | printutils/lpr.c | 2 |
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[]) | |||
| 130 | cmd = (opts & LPQ_SHORT_FMT) ? 3 : 4; | 130 | cmd = (opts & LPQ_SHORT_FMT) ? 3 : 4; |
| 131 | command: | 131 | command: |
| 132 | printf("%c" "%s\n", cmd, queue); | 132 | printf("%c" "%s\n", cmd, queue); |
| 133 | fflush(stdout); | ||
| 133 | bb_copyfd_eof(STDOUT_FILENO, old_stdout); | 134 | bb_copyfd_eof(STDOUT_FILENO, old_stdout); |
| 134 | } | 135 | } |
| 135 | 136 | ||
| @@ -225,6 +226,7 @@ int lpqr_main(int argc, char *argv[]) | |||
| 225 | st.st_size = 0; /* paranoia: fstat may theoretically fail */ | 226 | st.st_size = 0; /* paranoia: fstat may theoretically fail */ |
| 226 | fstat(fd, &st); | 227 | fstat(fd, &st); |
| 227 | printf("\x3" "%"OFF_FMT"u d%s\n", st.st_size, remote_filename); | 228 | printf("\x3" "%"OFF_FMT"u d%s\n", st.st_size, remote_filename); |
| 229 | fflush(stdout); | ||
| 228 | if (bb_copyfd_size(fd, STDOUT_FILENO, st.st_size) != st.st_size) { | 230 | if (bb_copyfd_size(fd, STDOUT_FILENO, st.st_size) != st.st_size) { |
| 229 | // We're screwed. We sent less bytes than we advertised. | 231 | // We're screwed. We sent less bytes than we advertised. |
| 230 | bb_error_msg_and_die("local file changed size?!"); | 232 | bb_error_msg_and_die("local file changed size?!"); |
