Using the constant in a regular `if (...)` pretends that this is
anything but a compile time option. Let's use `#if JOBS` instead,
making it *much* clearer what `JOBS` actually is.

Incidentally, this change fixes the build in setups where there are
no headers defining WIFSTOPPED and WSTOPSIG (where JOBS has to be
set to 0).

This partially reverts 4700fb5be (ash: make dowait() a bit more
readable. Logic is unchanged, 2015-10-09).

Signed-off-by: Johannes Schindelin <johannes.schinde...@gmx.de>
---
 shell/ash.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/shell/ash.c b/shell/ash.c
index 8c2098dd9..5c8216331 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -4022,15 +4022,19 @@ sprint_status48(char *s, int status, int sigonly)
 
        col = 0;
        if (!WIFEXITED(status)) {
-               if (JOBS && WIFSTOPPED(status))
+#if JOBS
+               if (WIFSTOPPED(status))
                        st = WSTOPSIG(status);
                else
+#endif
                        st = WTERMSIG(status);
                if (sigonly) {
                        if (st == SIGINT || st == SIGPIPE)
                                goto out;
-                       if (JOBS && WIFSTOPPED(status))
+#if JOBS
+                       if (WIFSTOPPED(status))
                                goto out;
+#endif
                }
                st &= 0x7f;
 //TODO: use bbox's get_signame? strsignal adds ~600 bytes to text+rodata
@@ -4182,7 +4186,9 @@ dowait(int block, struct job *job)
                goto out;
        }
        /* The process wasn't found in job list */
-       if (JOBS && !WIFSTOPPED(status))
+#if JOBS
+       if (!WIFSTOPPED(status))
+#endif
                jobless--;
  out:
        INT_ON;
-- 
2.13.3.windows.1.13.gaf0c2223da0
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to