diff --git a/ext/mini_racer_extension/mini_racer_extension.cc b/ext/mini_racer_extension/mini_racer_extension.cc index 255a2962..f930ac83 100644 --- a/ext/mini_racer_extension/mini_racer_extension.cc +++ b/ext/mini_racer_extension/mini_racer_extension.cc @@ -467,6 +467,14 @@ nogvl_context_eval(void* arg) { IsolateData::Init(isolate); + if (eval_params->max_memory > 0) { + IsolateData::Set(isolate, IsolateData::MEM_SOFTLIMIT_MAX, eval_params->max_memory); + if (!isolate_info->added_gc_cb) { + isolate->AddGCEpilogueCallback(gc_callback); + isolate_info->added_gc_cb = true; + } + } + MaybeLocal