[bugfix] do not release pic->var_tbl when a senv holding it is dead
This commit is contained in:
parent
e7673c65bd
commit
cbd636e0a7
8
src/gc.c
8
src/gc.c
|
@ -424,9 +424,11 @@ gc_finalize_object(pic_state *pic, struct pic_object *obj)
|
||||||
}
|
}
|
||||||
case PIC_TT_SENV: {
|
case PIC_TT_SENV: {
|
||||||
struct pic_senv *senv = (struct pic_senv *)obj;
|
struct pic_senv *senv = (struct pic_senv *)obj;
|
||||||
xh_destory(senv->tbl);
|
if (senv->up) {
|
||||||
if (senv->stx)
|
xh_destory(senv->tbl);
|
||||||
pic_free(pic, senv->stx);
|
if (senv->stx)
|
||||||
|
pic_free(pic, senv->stx);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case PIC_TT_SYNTAX: {
|
case PIC_TT_SYNTAX: {
|
||||||
|
|
Loading…
Reference in New Issue