@@ -144,12 +144,12 @@ ModuleWrap::ModuleWrap(Realm* realm,
144144 Local<Object> context_object,
145145 Local<Value> synthetic_evaluation_step)
146146 : BaseObject(realm, object),
147+ url_ (Utf8Value(realm->isolate (), url).ToString()),
147148 module_(realm->isolate (), module),
148149 module_hash_(module ->GetIdentityHash ()) {
149150 realm->env ()->hash_to_module_map .emplace (module_hash_, this );
150151
151152 object->SetInternalField (kModuleSlot , module );
152- object->SetInternalField (kURLSlot , url);
153153 object->SetInternalField (kModuleSourceObjectSlot ,
154154 v8::Undefined (realm->isolate ()));
155155 object->SetInternalField (kSyntheticEvaluationStepsSlot ,
@@ -968,8 +968,7 @@ void ModuleWrap::GetModuleSourceObject(
968968 obj->object ()->GetInternalField (kModuleSourceObjectSlot ).As <Value>();
969969
970970 if (module_source_object->IsUndefined ()) {
971- Local<String> url = obj->object ()->GetInternalField (kURLSlot ).As <String>();
972- THROW_ERR_SOURCE_PHASE_NOT_DEFINED (isolate, url);
971+ THROW_ERR_SOURCE_PHASE_NOT_DEFINED (isolate, obj->url_ );
973972 return ;
974973 }
975974
@@ -1043,10 +1042,8 @@ MaybeLocal<Object> ModuleWrap::ResolveSourceCallback(
10431042 ->GetInternalField (ModuleWrap::kModuleSourceObjectSlot )
10441043 .As <Value>();
10451044 if (module_source_object->IsUndefined ()) {
1046- Local<String> url = resolved_module->object ()
1047- ->GetInternalField (ModuleWrap::kURLSlot )
1048- .As <String>();
1049- THROW_ERR_SOURCE_PHASE_NOT_DEFINED (Isolate::GetCurrent (), url);
1045+ THROW_ERR_SOURCE_PHASE_NOT_DEFINED (Isolate::GetCurrent (),
1046+ resolved_module->url_ );
10501047 return {};
10511048 }
10521049 CHECK (module_source_object->IsObject ());
@@ -1078,17 +1075,21 @@ Maybe<ModuleWrap*> ModuleWrap::ResolveModule(
10781075 return Nothing<ModuleWrap*>();
10791076 }
10801077 if (!dependent->IsLinked ()) {
1081- THROW_ERR_VM_MODULE_LINK_FAILURE (
1082- env,
1083- " request for '%s' is from a module not been linked" ,
1084- cache_key.specifier );
1078+ THROW_ERR_VM_MODULE_LINK_FAILURE (env,
1079+ " request for '%s' can not be resolved on "
1080+ " module '%s' that is not linked" ,
1081+ cache_key.specifier ,
1082+ dependent->url_ );
10851083 return Nothing<ModuleWrap*>();
10861084 }
10871085
10881086 auto it = dependent->resolve_cache_ .find (cache_key);
10891087 if (it == dependent->resolve_cache_ .end ()) {
10901088 THROW_ERR_VM_MODULE_LINK_FAILURE (
1091- env, " request for '%s' is not in cache" , cache_key.specifier );
1089+ env,
1090+ " request for '%s' is not cached on module '%s'" ,
1091+ cache_key.specifier ,
1092+ dependent->url_ );
10921093 return Nothing<ModuleWrap*>();
10931094 }
10941095
0 commit comments