[git commit] code shrink in check_errors_in_children()
Denys Vlasenko
vda.linux at googlemail.com
Thu Feb 28 15:38:25 UTC 2013
commit: http://git.busybox.net/busybox/commit/?id=577235dee826eed86d76b0d4ef866297a20ecd55
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
archival/libarchive/open_transformer.c | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/archival/libarchive/open_transformer.c b/archival/libarchive/open_transformer.c
index dae04aa..4e44a87 100644
--- a/archival/libarchive/open_transformer.c
+++ b/archival/libarchive/open_transformer.c
@@ -34,6 +34,7 @@ void check_errors_in_children(int signo)
if (!signo) {
/* block waiting for any child */
if (wait(&status) < 0)
+//FIXME: check EINTR?
return; /* probably there are no children */
goto check_status;
}
@@ -41,14 +42,18 @@ void check_errors_in_children(int signo)
/* Wait for any child without blocking */
for (;;) {
if (wait_any_nohang(&status) < 0)
+//FIXME: check EINTR?
/* wait failed?! I'm confused... */
return;
check_status:
- if (WIFEXITED(status) && WEXITSTATUS(status) == 0)
+ /*if (WIFEXITED(status) && WEXITSTATUS(status) == 0)*/
+ /* On Linux, the above can be checked simply as: */
+ if (status == 0)
/* this child exited with 0 */
continue;
- /* Cannot happen?
- if (!WIFSIGNALED(status) && !WIFEXITED(status)) ???; */
+ /* Cannot happen:
+ if (!WIFSIGNALED(status) && !WIFEXITED(status)) ???;
+ */
bb_got_signal = 1;
}
}
More information about the busybox-cvs
mailing list