Fixed return value of propagatemark in case of propagating a table with empty hash part

This commit is contained in:
Igor Ehrlich 2016-10-12 18:42:36 +03:00
parent fcc8244899
commit 643e70c130

View File

@ -307,7 +307,7 @@ static size_t propagatemark(global_State *g)
if (gc_traverse_tab(g, t) > 0)
black2gray(o); /* Keep weak tables gray. */
return sizeof(GCtab) + sizeof(TValue) * t->asize +
sizeof(Node) * (t->hmask + 1);
(t->hmask ? sizeof(Node) * (t->hmask + 1) : 0);
} else if (LJ_LIKELY(gct == ~LJ_TFUNC)) {
GCfunc *fn = gco2func(o);
gc_traverse_func(g, fn);