[PATCH 3/3] ash: use JOBS as the compile time option it actually is

Xabier Oneca -- xOneca xoneca at gmail.com
Fri Jul 14 14:57:01 UTC 2017


Hello Johannes,

2017-07-14 16:11 GMT+02:00 Johannes Schindelin <johannes.schindelin at gmx.de>:
> 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.schindelin at 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--;

Here the logic does change.

>   out:
>         INT_ON;
> --
> 2.13.3.windows.1.13.gaf0c2223da0
> _______________________________________________
> busybox mailing list
> busybox at busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox

Cheers,

Xabier Oneca_,,_


More information about the busybox mailing list