diff options
Diffstat (limited to 'src/node_process_methods.cc')
-rw-r--r-- | src/node_process_methods.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/node_process_methods.cc b/src/node_process_methods.cc index a9ddd70bcb..912ac9bec2 100644 --- a/src/node_process_methods.cc +++ b/src/node_process_methods.cc @@ -63,6 +63,12 @@ static void Abort(const FunctionCallbackInfo<Value>& args) { Abort(); } +// For internal testing only, not exposed to userland. +static void CauseSegfault(const FunctionCallbackInfo<Value>& args) { + // This should crash hard all platforms. + *static_cast<void**>(nullptr) = nullptr; +} + static void Chdir(const FunctionCallbackInfo<Value>& args) { Environment* env = Environment::GetCurrent(args); CHECK(env->owns_process_state()); @@ -405,6 +411,7 @@ static void InitializeProcessMethods(Local<Object> target, env->SetMethod(target, "_debugProcess", DebugProcess); env->SetMethod(target, "_debugEnd", DebugEnd); env->SetMethod(target, "abort", Abort); + env->SetMethod(target, "causeSegfault", CauseSegfault); env->SetMethod(target, "chdir", Chdir); } |