summaryrefslogtreecommitdiffhomepage
path: root/src/state.c
diff options
context:
space:
mode:
authorksss <[email protected]>2014-04-12 12:57:19 +0900
committerksss <[email protected]>2014-04-12 04:44:56 +0000
commite08998be8f2056482567f458938cd584702cb485 (patch)
treeb8c90f1afa8d0f92b1c44042dde3a19cf5c8a930 /src/state.c
parent3308177c4d1a44120a1166f36624aff033e929e4 (diff)
downloadmruby-e08998be8f2056482567f458938cd584702cb485.tar.gz
mruby-e08998be8f2056482567f458938cd584702cb485.zip
Delegate irep string free to mrb_gc_free_str
Diffstat (limited to 'src/state.c')
-rw-r--r--src/state.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/state.c b/src/state.c
index 3dfeed5dc..1e26f49cf 100644
--- a/src/state.c
+++ b/src/state.c
@@ -134,9 +134,7 @@ mrb_irep_free(mrb_state *mrb, mrb_irep *irep)
mrb_free(mrb, irep->iseq);
for (i=0; i<irep->plen; i++) {
if (mrb_type(irep->pool[i]) == MRB_TT_STRING) {
- if ((mrb_str_ptr(irep->pool[i])->flags & (MRB_STR_NOFREE|MRB_STR_EMBED)) == 0) {
- mrb_free(mrb, RSTRING_PTR(irep->pool[i]));
- }
+ mrb_gc_free_str(mrb, RSTRING(irep->pool[i]));
mrb_free(mrb, mrb_obj_ptr(irep->pool[i]));
}
#ifdef MRB_WORD_BOXING