summary refs log tree commit diff
path: root/src/arith_yacc.c
diff options
context:
space:
mode:
authorJonathan Nieder <jrnieder@gmail.com>2011-03-15 16:03:47 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2011-03-15 16:03:47 +0800
commitfd45f364a8387f7193f2b9be5d316ffb4361a5da (patch)
treec81bb63705ec933ccdfcaabd39bb8f74cbd1d42d /src/arith_yacc.c
parent[EXPAND] Free IFS state after here document expansion (diff)
downloaddash-fd45f364a8387f7193f2b9be5d316ffb4361a5da.tar.gz
dash-fd45f364a8387f7193f2b9be5d316ffb4361a5da.zip
[DEBUG] Use va_copy when reusing a va_list
When tracing (with the DEBUG compile-time option set to 1 or 2),
exverror calls TRACEV to print its arguments before passing them on.
So the arguments are consumed by the time exvwarning looks for them,
resulting in a segfault:

 $ sh -c '"'
 sh: Syntax error: Unterminated quoted string
 $ sh -o debug -c '"'
 sh: Segmentation fault (core dumped)

Make a copy with va_copy to avoid this.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'src/arith_yacc.c')
0 files changed, 0 insertions, 0 deletions