★ wanayoo — archive 1999 https://github.com/nodejs/node/commit/39b38754ebNouvelle recherche | Portail wanayoo
Skip to content
Permalink
Browse files

src: cleanup beforeExit for consistency

PR-URL: #21113
Reviewed-By: Anna Henningsen <anna@addaleax.net>
  • Loading branch information...
jasnell authored and targos committed Jun 3, 2018
1 parent 14bb905 commit 39b38754eb711d1493655f07f693727aa0bc0950
Showing with 11 additions and 9 deletions.
  1. +0 −2 src/env.h
  2. +11 −7 src/node.cc
@@ -160,9 +160,7 @@ struct PackageConfig {
V(env_pairs_string, "envPairs") \
V(errno_string, "errno") \
V(error_string, "error") \
V(exiting_string, "_exiting") \
V(exit_code_string, "exitCode") \
V(exit_string, "exit") \
V(expire_string, "expire") \
V(exponent_string, "exponent") \
V(exports_string, "exports") \
@@ -4047,10 +4047,11 @@ void EmitBeforeExit(Environment* env) {
HandleScope handle_scope(env->isolate());
Context::Scope context_scope(env->context());
Local<Object> process_object = env->process_object();
Local<String> exit_code = FIXED_ONE_BYTE_STRING(env->isolate(), "exitCode");
Local<String> exit_code = env->exit_code_string();
Local<Value> args[] = {
FIXED_ONE_BYTE_STRING(env->isolate(), "beforeExit"),
process_object->Get(exit_code)->ToInteger(env->context()).ToLocalChecked()
process_object->Get(env->context(), exit_code).ToLocalChecked()
->ToInteger(env->context()).ToLocalChecked()
};
MakeCallback(env->isolate(),
process_object, "emit", arraysize(args), args,
@@ -4063,13 +4064,15 @@ int EmitExit(Environment* env) {
HandleScope handle_scope(env->isolate());
Context::Scope context_scope(env->context());
Local<Object> process_object = env->process_object();
process_object->Set(env->exiting_string(), True(env->isolate()));
process_object->Set(FIXED_ONE_BYTE_STRING(env->isolate(), "_exiting"),
True(env->isolate()));

Local<String> exitCode = env->exit_code_string();
int code = process_object->Get(exitCode)->Int32Value();
Local<String> exit_code = env->exit_code_string();
int code = process_object->Get(env->context(), exit_code).ToLocalChecked()
->Int32Value(env->context()).ToChecked();

Local<Value> args[] = {
env->exit_string(),
FIXED_ONE_BYTE_STRING(env->isolate(), "exit"),
Integer::New(env->isolate(), code)
};

@@ -4078,7 +4081,8 @@ int EmitExit(Environment* env) {
{0, 0}).ToLocalChecked();

// Reload exit code, it may be changed by `emit('exit')`
return process_object->Get(exitCode)->Int32Value();
return process_object->Get(env->context(), exit_code).ToLocalChecked()
->Int32Value(env->context()).ToChecked();
}


0 comments on commit 39b3875

Please sign in to comment.
You can’t perform that action at this time.