diff options
Diffstat (limited to 'deps/v8/src/objects/module.cc')
-rw-r--r-- | deps/v8/src/objects/module.cc | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/deps/v8/src/objects/module.cc b/deps/v8/src/objects/module.cc index 4e89050360..60b9145d10 100644 --- a/deps/v8/src/objects/module.cc +++ b/deps/v8/src/objects/module.cc @@ -107,21 +107,18 @@ void Module::Reset(Isolate* isolate, Handle<Module> module) { module->PrintStatusTransition(kUninstantiated); #endif // DEBUG - int export_count; + const int export_count = + module->IsSourceTextModule() + ? Handle<SourceTextModule>::cast(module)->regular_exports().length() + : Handle<SyntheticModule>::cast(module)->export_names().length(); + Handle<ObjectHashTable> exports = ObjectHashTable::New(isolate, export_count); if (module->IsSourceTextModule()) { - Handle<SourceTextModule> source_text_module = - Handle<SourceTextModule>::cast(module); - export_count = source_text_module->regular_exports().length(); - SourceTextModule::Reset(isolate, source_text_module); + SourceTextModule::Reset(isolate, Handle<SourceTextModule>::cast(module)); } else { - export_count = - Handle<SyntheticModule>::cast(module)->export_names().length(); // Nothing to do here. } - Handle<ObjectHashTable> exports = ObjectHashTable::New(isolate, export_count); - module->set_exports(*exports); module->set_status(kUninstantiated); } |