From d4b66d5944e950a94a8790aad834ea01d421458f Mon Sep 17 00:00:00 2001 From: Dmitry Volyntsev Date: Wed, 1 Oct 2025 20:23:08 -0700 Subject: [PATCH] Modules: fixed memory leak when module loading failed. --- nginx/ngx_js.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nginx/ngx_js.c b/nginx/ngx_js.c index 053c23c2..7d2522bb 100644 --- a/nginx/ngx_js.c +++ b/nginx/ngx_js.c @@ -571,6 +571,7 @@ ngx_engine_njs_init(ngx_engine_t *engine, ngx_engine_opts_t *opts) rc = ngx_js_set_cwd(njs_vm_memory_pool(vm), opts->conf, &vm_options.file); if (rc != NGX_OK) { + njs_vm_destroy(vm); return NGX_ERROR; } @@ -665,6 +666,7 @@ ngx_njs_clone(ngx_js_ctx_t *ctx, ngx_js_loc_conf_t *cf, void *external) engine = njs_mp_alloc(njs_vm_memory_pool(vm), sizeof(ngx_engine_t)); if (engine == NULL) { + njs_vm_destroy(vm); return NULL; } @@ -677,6 +679,8 @@ ngx_njs_clone(ngx_js_ctx_t *ctx, ngx_js_loc_conf_t *cf, void *external) ngx_log_error(NGX_LOG_ERR, ctx->log, 0, "js exception: %V", &exception); + njs_vm_destroy(vm); + return NULL; } -- 2.47.3