From 993c58fde3a85c27f52f094002ec57dabca81028 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Mon, 15 Jun 2020 12:01:36 -0300 Subject: In 'lua_checkmemory', userdata can be gray, too Since commit ca6fe7449a74, userdata with uservalues can be gray and can belong to gray lists ('gclist'). --- ltests.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ltests.c b/ltests.c index 314505c3..63ad4498 100644 --- a/ltests.c +++ b/ltests.c @@ -519,6 +519,10 @@ static void checkgraylist (global_State *g, GCObject *o) { case LUA_VCCL: o = gco2ccl(o)->gclist; break; case LUA_VTHREAD: o = gco2th(o)->gclist; break; case LUA_VPROTO: o = gco2p(o)->gclist; break; + case LUA_VUSERDATA: + lua_assert(gco2u(o)->nuvalue > 0); + o = gco2u(o)->gclist; + break; default: lua_assert(0); /* other objects cannot be in a gray list */ } } -- cgit v1.2.3-55-g6feb