From a681d7d152f07e8025e1fc947d63a8b52681063e Mon Sep 17 00:00:00 2001 From: Luigi Scarso <luigi.scarso@gmail.com> Date: Tue, 28 Mar 2017 15:11:25 +0000 Subject: [PATCH] fixed leak in tex.get some glue (HH) [[Split portion of a mixed commit.]] --- source/texk/web2c/luatexdir/lua/ltexlib.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/texk/web2c/luatexdir/lua/ltexlib.c b/source/texk/web2c/luatexdir/lua/ltexlib.c index a38b608e4..b5a110657 100644 --- a/source/texk/web2c/luatexdir/lua/ltexlib.c +++ b/source/texk/web2c/luatexdir/lua/ltexlib.c @@ -1775,6 +1775,7 @@ static int do_convert(lua_State * L, int cur_code) static int do_scan_internal(lua_State * L, int cur_cmd1, int cur_code, int values) { int texstr; + int retval = 1 ; char *str = NULL; int save_cur_val, save_cur_val_level; save_cur_val = cur_val; @@ -1790,13 +1791,15 @@ static int do_scan_internal(lua_State * L, int cur_cmd1, int cur_code, int value case mu_val_level: if (values == 0) { lua_pushinteger(L,width(cur_val)); + flush_node(cur_val); } else if (values == 1) { lua_pushinteger(L,width(cur_val)); lua_pushinteger(L,stretch(cur_val)); lua_pushinteger(L,shrink(cur_val)); lua_pushinteger(L,stretch_order(cur_val)); lua_pushinteger(L,shrink_order(cur_val)); - return 5; + flush_node(cur_val); + retval = 5; } else { lua_nodelib_push_fast(L, cur_val); } @@ -1815,7 +1818,7 @@ static int do_scan_internal(lua_State * L, int cur_cmd1, int cur_code, int value } cur_val = save_cur_val; cur_val_level = save_cur_val_level; - return 1; + return retval; } static int do_lastitem(lua_State * L, int cur_code) -- GitLab