summaryrefslogtreecommitdiff
path: root/rc.h
diff options
context:
space:
mode:
authorDrazen Borkovic <borkovic@users.noreply.github.com>2015-10-26 22:22:54 -0700
committerToby Goodwin <toby@paccrat.org>2017-05-26 22:12:26 +0100
commitd8946406165ccfc458ff418aec465d67fa61ec1e (patch)
treefc5568d8fe63d2484656e8823e393a11b4a22e02 /rc.h
parent6eb8030b2dcc91cf689394056741f47408411d69 (diff)
When running rc on the following script, rc crashes.
fn f1 { v=x { }} fn f2 { f1 1; f1 2 } f2 whatis Valgrind stack: ==10068== Invalid read of size 8 ==10068== at 0x40EFB1: varlookup (var.c:84) ==10068== by 0x407B04: whatare_all_vars (hash.c:311) ==10068== by 0x401E60: b_whatis (builtins.c:323) ==10068== by 0x402E32: exec (exec.c:92) ==10068== by 0x40F997: walk (walk.c:39) The reason is that vp[h].p is freed in delete_var(), but the pointer is kept. Later the pointer is found to be non-null and dereferenced causing the crash.
Diffstat (limited to 'rc.h')
0 files changed, 0 insertions, 0 deletions