mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 23:24:09 +00:00
FFI: Fix marking of ffi.gc() finalizer table.
This commit is contained in:
parent
ac3b1dcfc5
commit
063182d79c
@ -310,7 +310,7 @@ static size_t propagatemark(global_State *g)
|
|||||||
setgcrefr(g->gc.gray, o->gch.gclist); /* Remove from gray list. */
|
setgcrefr(g->gc.gray, o->gch.gclist); /* Remove from gray list. */
|
||||||
if (LJ_LIKELY(o->gch.gct == ~LJ_TTAB)) {
|
if (LJ_LIKELY(o->gch.gct == ~LJ_TTAB)) {
|
||||||
GCtab *t = gco2tab(o);
|
GCtab *t = gco2tab(o);
|
||||||
if (gc_traverse_tab(g, t))
|
if (gc_traverse_tab(g, t) > 0)
|
||||||
black2gray(o); /* Keep weak tables gray. */
|
black2gray(o); /* Keep weak tables gray. */
|
||||||
return sizeof(GCtab) + sizeof(TValue) * t->asize +
|
return sizeof(GCtab) + sizeof(TValue) * t->asize +
|
||||||
sizeof(Node) * (t->hmask + 1);
|
sizeof(Node) * (t->hmask + 1);
|
||||||
|
Loading…
Reference in New Issue
Block a user