File tree Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -758,7 +758,7 @@ Maybe<void> InitializeMainContextForSnapshot(Local<Context> context) {
758758 if (InitializeBaseContextForSnapshot (context).IsNothing ()) {
759759 return Nothing<void >();
760760 }
761- return InitializePrimordials (context );
761+ return JustVoid ( );
762762}
763763
764764Maybe<void > InitializePrimordials (Local<Context> context) {
@@ -767,13 +767,17 @@ Maybe<void> InitializePrimordials(Local<Context> context) {
767767 Context::Scope context_scope (context);
768768 Local<Object> exports;
769769
770+ if (!GetPerContextExports (context).ToLocal (&exports)) {
771+ return Nothing<void >();
772+ }
770773 Local<String> primordials_string =
771774 FIXED_ONE_BYTE_STRING (isolate, " primordials" );
775+ // Ensure that `InitializePrimordials` is called exactly once on a given context.
776+ CHECK (!exports->Has (context, primordials_string).FromJust ());
772777
773- // Create primordials first and make it available to per-context scripts.
774778 Local<Object> primordials = Object::New (isolate);
779+ // Create primordials and make it available to per-context scripts.
775780 if (primordials->SetPrototypeV2 (context, Null (isolate)).IsNothing () ||
776- !GetPerContextExports (context).ToLocal (&exports) ||
777781 exports->Set (context, primordials_string, primordials).IsNothing ()) {
778782 return Nothing<void >();
779783 }
You can’t perform that action at this time.
0 commit comments