From c74b5da82c592516be311031a5fbe207813f3f13 Mon Sep 17 00:00:00 2001 From: Archkon <180910180+Archkon@users.noreply.github.com> Date: Thu, 6 Aug 2026 15:00:17 +0800 Subject: [PATCH] process: stop _kill on missing arguments Return immediately after throwing ERR_MISSING_ARGS so process._kill() does not coerce missing arguments or call uv_kill(). Signed-off-by: Archkon <180910180+Archkon@users.noreply.github.com> --- src/node_process_methods.cc | 2 +- test/parallel/test-process-kill-pid.js | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/node_process_methods.cc b/src/node_process_methods.cc index 1c695be2d5fa..4ac8705cb6fe 100644 --- a/src/node_process_methods.cc +++ b/src/node_process_methods.cc @@ -186,7 +186,7 @@ static void Kill(const FunctionCallbackInfo& args) { Local context = env->context(); if (args.Length() < 2) { - THROW_ERR_MISSING_ARGS(env, "Bad argument."); + return THROW_ERR_MISSING_ARGS(env, "Bad argument."); } int pid; diff --git a/test/parallel/test-process-kill-pid.js b/test/parallel/test-process-kill-pid.js index c4f172e61d6e..6f52089f6cae 100644 --- a/test/parallel/test-process-kill-pid.js +++ b/test/parallel/test-process-kill-pid.js @@ -23,6 +23,14 @@ const common = require('../common'); const assert = require('assert'); +for (const args of [[], [process.pid]]) { + assert.throws(() => process._kill(...args), { + code: 'ERR_MISSING_ARGS', + name: 'TypeError', + message: 'Bad argument.' + }); +} + // Test variants of pid // // null: TypeError