mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
create Proc object before releasing memory pool
This commit is contained in:
+3
-1
@@ -2891,6 +2891,7 @@ struct RProc*
|
||||
mrb_generate_code(mrb_state *mrb, parser_state *p)
|
||||
{
|
||||
codegen_scope *scope = scope_new(mrb, 0, 0);
|
||||
struct RProc *proc;
|
||||
|
||||
if (!scope) {
|
||||
return NULL;
|
||||
@@ -2902,8 +2903,9 @@ mrb_generate_code(mrb_state *mrb, parser_state *p)
|
||||
if (setjmp(scope->jmp) == 0) {
|
||||
// prepare irep
|
||||
codegen(scope, p->tree, NOVAL);
|
||||
proc = mrb_proc_new(mrb, scope->irep);
|
||||
mrb_pool_close(scope->mpool);
|
||||
return mrb_proc_new(mrb, scope->irep);
|
||||
return proc;
|
||||
}
|
||||
else {
|
||||
return NULL;
|
||||
|
||||
Reference in New Issue
Block a user