[PATCH] shell script error management in ash (set of 6 patches)

Harald van Dijk harald at gigawatt.nl
Fri Aug 20 13:21:46 UTC 2021


On 20/08/2021 13:48, Roberto A. Foglietta wrote:
> 
> Il giorno ven 20 ago 2021 alle ore 14:05 Harald van Dijk 
> <harald at gigawatt.nl <mailto:harald at gigawatt.nl>> ha scritto:
> 
>     Hi,
> 
>     Replying to the new thread as requested.
> 
>     About the global LINENO: having thought about it more, I don't think it
>     makes sense to special-case trap actions. This is something that should
>     be done for all evalstring() calls that are performed when an outer
>     context has already set LINENO. In the busybox version of ash, there is
>     only one other such case: the eval command. 
> 
> 
> Hi Harald,
> 
>   thank you for your consideration. I did a patch that satisfies your case.
>   The test suite is in attachment also because it is updated with the 
> new case.

Hi,

Please note the "when an outer context has already set LINENO" 
qualification :) busybox does have one call to evalstring() when no 
outer context has set LINENO to be preserved (and a prior context might 
have set it to an unrelated value that should be discarded): that 
happens when processing the command string supplied with the -c command 
line option. In that case, it is probably best to let LINENO start at 1 
from the start of the command string like busybox ash currently does.

>   Best regards,
> -R
> 


More information about the busybox mailing list