This commit is contained in:
iceman1001 2024-02-04 11:41:18 +01:00
commit bd4a6b82b3

View file

@ -1,5 +1,5 @@
/* /*
** $Id: lgc.c,v 2.140 2013/03/16 21:10:18 roberto Exp $ ** $Id: lgc.c,v 2.140 2013/04/26 18:22:05 roberto Exp $
** Garbage Collector ** Garbage Collector
** See Copyright Notice in lua.h ** See Copyright Notice in lua.h
*/ */
@ -401,7 +401,7 @@ static int traverseephemeron(global_State *g, Table *h) {
reallymarkobject(g, gcvalue(gval(n))); /* mark it now */ reallymarkobject(g, gcvalue(gval(n))); /* mark it now */
} }
} }
if (prop) if (g->gcstate != GCSatomic || prop)
linktable(h, &g->ephemeron); /* have to propagate again */ linktable(h, &g->ephemeron); /* have to propagate again */
else if (hasclears) /* does table have white keys? */ else if (hasclears) /* does table have white keys? */
linktable(h, &g->allweak); /* may have to clean white keys */ linktable(h, &g->allweak); /* may have to clean white keys */