diff options
author | Denys Vlasenko | 2010-01-12 12:29:55 +0100 |
---|---|---|
committer | Denys Vlasenko | 2010-01-12 12:29:55 +0100 |
commit | cb23d93c6845df3f2733a32caa4194e60ef871a7 (patch) | |
tree | 3df3fae13c62eea184d61ceaed25a4fdf85c809c /miscutils/microcom.c | |
parent | 385cc59117f2788d24d2cd75fd58f7ff044d501c (diff) | |
download | busybox-cb23d93c6845df3f2733a32caa4194e60ef871a7.zip busybox-cb23d93c6845df3f2733a32caa4194e60ef871a7.tar.gz |
*: add/remove safe_, it seems we had a few incorrect uses
function old new delta
chat_main 1359 1361 +2
microcom_main 712 713 +1
ifplugd_main 1109 1110 +1
arpping 465 466 +1
acpid_main 440 441 +1
script_main 1069 1067 -2
cgi_io_loop_and_exit 594 591 -3
telnet_main 1475 1469 -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/3 up/down: 6/-11) Total: -5 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'miscutils/microcom.c')
-rw-r--r-- | miscutils/microcom.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/miscutils/microcom.c b/miscutils/microcom.c index fe6661f..9a7a41d 100644 --- a/miscutils/microcom.c +++ b/miscutils/microcom.c @@ -117,8 +117,9 @@ int microcom_main(int argc UNUSED_PARAM, char **argv) bb_got_signal = 0; nfd = 2; - while (!bb_got_signal && safe_poll(pfd, nfd, timeout) > 0) { - if (nfd > 1 && pfd[1].revents) { + // Not safe_poll: we want to exit on signal + while (!bb_got_signal && poll(pfd, nfd, timeout) > 0) { + if (nfd > 1 && (pfd[1].revents & POLLIN)) { char c; // read from stdin -> write to device if (safe_read(STDIN_FILENO, &c, 1) < 1) { @@ -142,7 +143,7 @@ int microcom_main(int argc UNUSED_PARAM, char **argv) safe_poll(pfd, 1, delay); skip_write: ; } - if (pfd[0].revents) { + if (pfd[0].revents & POLLIN) { #define iobuf bb_common_bufsiz1 ssize_t len; // read from device -> write to stdout |