From 36a7d5436484f81bdd842aa2b415d1213c204d82 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Sat, 3 Mar 2018 21:27:07 +0100 Subject: Fix a memory bug in exec_macro --- src/sc_interp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/sc_interp.c') diff --git a/src/sc_interp.c b/src/sc_interp.c index 51849d5..d2db5bf 100644 --- a/src/sc_interp.c +++ b/src/sc_interp.c @@ -1073,9 +1073,9 @@ static void exec_macro(SCBlock *bl, SCInterpreter *scin, SCBlock *child) sc_interp_save(scin); scin->state[scin->j].macro_real_block = bl; scin->state[scin->j].macro_contents = child; - sc_interp_add_blocks(scin, st->macros[i].bl); + sc_interp_add_blocks(scin, scin->state[scin->j].macros[i].bl); sc_interp_restore(scin); - break; + break; /* Stop iterating, because "st" is now invalid */ } } } -- cgit v1.2.3