Skip to content

Commit 40c0219

Browse files
committed
maybe local for initialize
1 parent 3a8ab2c commit 40c0219

2 files changed

Lines changed: 11 additions & 12 deletions

File tree

src/api/environment.cc

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -767,8 +767,8 @@ Maybe<void> InitializeMainContextForSnapshot(Local<Context> context) {
767767
return JustVoid();
768768
}
769769

770-
Local<Object> InitializePrivateSymbols(Local<Context> context,
771-
IsolateData* isolate_data) {
770+
MaybeLocal<Object> InitializePrivateSymbols(Local<Context> context,
771+
IsolateData* isolate_data) {
772772
CHECK(isolate_data);
773773
Isolate* isolate = context->GetIsolate();
774774
EscapableHandleScope scope(isolate);
@@ -785,7 +785,7 @@ Local<Object> InitializePrivateSymbols(Local<Context> context,
785785
if (!private_symbols->NewInstance(context).ToLocal(&private_symbols_object) ||
786786
private_symbols_object->SetPrototypeV2(context, Null(isolate))
787787
.IsNothing()) {
788-
return Local<Object>();
788+
return MaybeLocal<Object>();
789789
}
790790

791791
return scope.Escape(private_symbols_object);
@@ -814,8 +814,11 @@ Maybe<void> InitializePrimordials(Local<Context> context,
814814
return Nothing<void>();
815815
}
816816

817-
Local<Object> private_symbols =
818-
InitializePrivateSymbols(context, isolate_data);
817+
Local<Object> private_symbols;
818+
if (!InitializePrivateSymbols(context, isolate_data)
819+
.ToLocal(&private_symbols)) {
820+
return Nothing<void>();
821+
}
819822

820823
static const char* context_files[] = {"internal/per_context/primordials",
821824
"internal/per_context/domexception",
@@ -832,11 +835,7 @@ Maybe<void> InitializePrimordials(Local<Context> context,
832835
builtin_loader.SetEagerCompile();
833836

834837
for (const char** module = context_files; *module != nullptr; module++) {
835-
Local<Value> arguments[3];
836-
arguments[0] = exports;
837-
arguments[1] = primordials;
838-
arguments[2] = private_symbols.IsEmpty() ? Local<Value>(Undefined(isolate))
839-
: Local<Value>(private_symbols);
838+
Local<Value> arguments[] = {exports, primordials, private_symbols};
840839

841840
if (builtin_loader
842841
.CompileAndCall(

src/node_internals.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,8 @@ v8::Maybe<void> InitializeBaseContextForSnapshot(
115115
v8::Maybe<void> InitializeContextRuntime(v8::Local<v8::Context> context);
116116
v8::Maybe<void> InitializePrimordials(v8::Local<v8::Context> context,
117117
IsolateData* isolate_data);
118-
v8::Local<v8::Object> InitializePrivateSymbols(v8::Local<v8::Context> context,
119-
IsolateData* isolate_data);
118+
v8::MaybeLocal<v8::Object> InitializePrivateSymbols(
119+
v8::Local<v8::Context> context, IsolateData* isolate_data);
120120

121121
class NodeArrayBufferAllocator : public ArrayBufferAllocator {
122122
public:

0 commit comments

Comments
 (0)