automatic arena extend

This commit is contained in:
Yuichi Nishiwaki 2014-05-26 15:56:51 +09:00
parent a003b42435
commit 826eb4415d
1 changed files with 2 additions and 1 deletions

View File

@ -180,7 +180,8 @@ static void
gc_protect(pic_state *pic, struct pic_object *obj)
{
if (pic->arena_idx >= pic->arena_size) {
pic_abort(pic, "arena overflow");
pic->arena_size = pic->arena_size * 2 + 1;
pic->arena = pic_realloc(pic, pic->arena, sizeof(struct pic_object *) * pic->arena_size);
}
pic->arena[pic->arena_idx++] = obj;
}