Skip to content

Commit a77d745

Browse files
committed
src: return MaybeLocal from InitializePrimordials
Signed-off-by: Darshan Sen <[email protected]>
1 parent 8be3b91 commit a77d745

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

src/api/environment.cc

+7-8
Original file line numberDiff line numberDiff line change
@@ -501,7 +501,7 @@ MaybeLocal<Object> GetPerContextExports(Local<Context> context) {
501501

502502
Local<Object> exports = Object::New(isolate);
503503
if (context->Global()->SetPrivate(context, key, exports).IsNothing() ||
504-
!InitializePrimordials(context))
504+
InitializePrimordials(context).IsEmpty())
505505
return MaybeLocal<Object>();
506506
return handle_scope.Escape(exports);
507507
}
@@ -587,10 +587,10 @@ bool InitializeContextForSnapshot(Local<Context> context) {
587587

588588
context->SetEmbedderData(ContextEmbedderIndex::kAllowWasmCodeGeneration,
589589
True(isolate));
590-
return InitializePrimordials(context);
590+
return !InitializePrimordials(context).IsEmpty();
591591
}
592592

593-
bool InitializePrimordials(Local<Context> context) {
593+
MaybeLocal<Object> InitializePrimordials(Local<Context> context) {
594594
// Run per-context JS files.
595595
Isolate* isolate = context->GetIsolate();
596596
Context::Scope context_scope(context);
@@ -606,7 +606,7 @@ bool InitializePrimordials(Local<Context> context) {
606606
if (!primordials->SetPrototype(context, Null(isolate)).FromJust() ||
607607
!GetPerContextExports(context).ToLocal(&exports) ||
608608
!exports->Set(context, primordials_string, primordials).FromJust()) {
609-
return false;
609+
return MaybeLocal<Object>();
610610
}
611611

612612
static const char* context_files[] = {"internal/per_context/primordials",
@@ -623,18 +623,17 @@ bool InitializePrimordials(Local<Context> context) {
623623
context, *module, &parameters, nullptr);
624624
Local<Function> fn;
625625
if (!maybe_fn.ToLocal(&fn)) {
626-
return false;
626+
return MaybeLocal<Object>();
627627
}
628628
MaybeLocal<Value> result =
629629
fn->Call(context, Undefined(isolate), arraysize(arguments), arguments);
630630
// Execution failed during context creation.
631-
// TODO(joyeecheung): deprecate this signature and return a MaybeLocal.
632631
if (result.IsEmpty()) {
633-
return false;
632+
return MaybeLocal<Object>();
634633
}
635634
}
636635

637-
return true;
636+
return primordials;
638637
}
639638

640639
bool InitializeContext(Local<Context> context) {

src/node_internals.h

+3-2
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,9 @@ void SignalExit(int signal, siginfo_t* info, void* ucontext);
9292
std::string GetProcessTitle(const char* default_title);
9393
std::string GetHumanReadableProcessName();
9494

95-
void InitializeContextRuntime(v8::Local<v8::Context>);
96-
bool InitializePrimordials(v8::Local<v8::Context> context);
95+
void InitializeContextRuntime(v8::Local<v8::Context> context);
96+
v8::MaybeLocal<v8::Object> InitializePrimordials(
97+
v8::Local<v8::Context> context);
9798

9899
class NodeArrayBufferAllocator : public ArrayBufferAllocator {
99100
public:

0 commit comments

Comments
 (0)