@@ -1004,16 +1004,21 @@ int Start(int argc, char** argv) {
10041004
10051005 {
10061006 Isolate::CreateParams params;
1007- // TODO(joyeecheung): collect external references and set it in
1008- // params.external_references.
1009- std::vector<intptr_t > external_references = {
1010- reinterpret_cast <intptr_t >(nullptr )};
1011- v8::StartupData* blob = NodeMainInstance::GetEmbeddedSnapshotBlob ();
1012- const std::vector<size_t >* indexes =
1013- NodeMainInstance::GetIsolateDataIndexes ();
1014- if (blob != nullptr ) {
1015- params.external_references = external_references.data ();
1016- params.snapshot_blob = blob;
1007+ const std::vector<size_t >* indexes = nullptr ;
1008+ std::vector<intptr_t > external_references;
1009+
1010+ bool force_no_snapshot =
1011+ per_process::cli_options->per_isolate ->no_node_snapshot ;
1012+ if (!force_no_snapshot) {
1013+ v8::StartupData* blob = NodeMainInstance::GetEmbeddedSnapshotBlob ();
1014+ if (blob != nullptr ) {
1015+ // TODO(joyeecheung): collect external references and set it in
1016+ // params.external_references.
1017+ external_references.push_back (reinterpret_cast <intptr_t >(nullptr ));
1018+ params.external_references = external_references.data ();
1019+ params.snapshot_blob = blob;
1020+ indexes = NodeMainInstance::GetIsolateDataIndexes ();
1021+ }
10171022 }
10181023
10191024 NodeMainInstance main_instance (¶ms,
0 commit comments