diff options
| author | Yukihiro Matsumoto <[email protected]> | 2012-09-03 08:34:31 +0900 |
|---|---|---|
| committer | Yukihiro Matsumoto <[email protected]> | 2012-09-03 08:34:31 +0900 |
| commit | 4f7a1a167db8a3373b356540eaee21f9cf93e7f2 (patch) | |
| tree | ecb3153837939d66d675f08cb67babdd2c83c392 /src/codegen.c | |
| parent | 5340126443609265d63159e4c391049cb722f828 (diff) | |
| download | mruby-4f7a1a167db8a3373b356540eaee21f9cf93e7f2.tar.gz mruby-4f7a1a167db8a3373b356540eaee21f9cf93e7f2.zip | |
remove memleaks using linked allocator
Diffstat (limited to 'src/codegen.c')
| -rw-r--r-- | src/codegen.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/src/codegen.c b/src/codegen.c index 2c8089b23..bdd2aeecc 100644 --- a/src/codegen.c +++ b/src/codegen.c @@ -2091,9 +2091,6 @@ scope_finish(codegen_scope *s, int idx) irep->nregs = s->nregs; mrb->arena_idx = s->ai; - if (!s->prev && s->filename) { - mrb_free(mrb, s->filename); - } mrb_pool_close(s->mpool); } @@ -2499,19 +2496,13 @@ codegen_start(mrb_state *mrb, parser_state *p) } scope->mrb = mrb; if (p->filename) { - int len = strlen(p->filename); - char *s = (char*)mrb_malloc(mrb, len+1); - - memcpy(s, p->filename, len + 1); - scope->filename = s; + scope->filename = p->filename; } if (setjmp(scope->jmp) != 0) { - //if (scope->filename) mrb_free(mrb, scope->filename); return -1; } // prepare irep codegen(scope, p->tree, NOVAL); - // if (scope->filename) mrb_free(mrb, scope->filename); mrb_pool_close(scope->mpool); return 0; } |
