diff options
Diffstat (limited to '')
-rw-r--r-- | lgc.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -632,8 +632,8 @@ static int traversethread (global_State *g, lua_State *th) { | |||
632 | for (uv = th->openupval; uv != NULL; uv = uv->u.open.next) | 632 | for (uv = th->openupval; uv != NULL; uv = uv->u.open.next) |
633 | markobject(g, uv); /* open upvalues cannot be collected */ | 633 | markobject(g, uv); /* open upvalues cannot be collected */ |
634 | if (g->gcstate == GCSatomic) { /* final traversal? */ | 634 | if (g->gcstate == GCSatomic) { /* final traversal? */ |
635 | for (; o < th->stack_last; o++) /* clear not-marked stack slice */ | 635 | for (; o < th->stack_last + EXTRA_STACK; o++) |
636 | setnilvalue(s2v(o)); | 636 | setnilvalue(s2v(o)); /* clear dead stack slice */ |
637 | /* 'remarkupvals' may have removed thread from 'twups' list */ | 637 | /* 'remarkupvals' may have removed thread from 'twups' list */ |
638 | if (!isintwups(th) && th->openupval != NULL) { | 638 | if (!isintwups(th) && th->openupval != NULL) { |
639 | th->twups = g->twups; /* link it back to the list */ | 639 | th->twups = g->twups; /* link it back to the list */ |