From ac4e90e398b04a44a4d60065d080786dd78d70a4 Mon Sep 17 00:00:00 2001 From: Theo Schlossnagle Date: Mon, 27 Feb 2017 16:07:02 +0000 Subject: [PATCH] Don't loop infinitely on self-referencing frame. --- src/lj_debug.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/lj_debug.c b/src/lj_debug.c index a684302c..93e3d0a7 100644 --- a/src/lj_debug.c +++ b/src/lj_debug.c @@ -40,6 +40,11 @@ cTValue *lj_debug_frame(lua_State *L, int level, int *size) if (frame_isvarg(frame)) level++; /* Skip vararg pseudo-frame. */ frame = frame_prevd(frame); + + /* bail on infinite loop */ + if (frame == nextframe) { + break; + } } } *size = level;