Changeset 223331 in webkit for trunk/Source/JavaScriptCore/runtime/JSModuleLoader.cpp
- Timestamp:
- Oct 15, 2017, 6:55:16 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/runtime/JSModuleLoader.cpp
r223237 r223331 203 203 } 204 204 205 JSInternalPromise* JSModuleLoader::resolve(ExecState* exec, JSValue name, JSValue referrer, JSValue scriptFetcher)205 Identifier JSModuleLoader::resolveSync(ExecState* exec, JSValue name, JSValue referrer, JSValue scriptFetcher) 206 206 { 207 207 if (Options::dumpModuleLoadingState()) … … 211 211 if (globalObject->globalObjectMethodTable()->moduleLoaderResolve) 212 212 return globalObject->globalObjectMethodTable()->moduleLoaderResolve(globalObject, exec, this, name, referrer, scriptFetcher); 213 JSInternalPromiseDeferred* deferred = JSInternalPromiseDeferred::create(exec, globalObject); 214 deferred->resolve(exec, name); 215 return deferred->promise(); 213 return name.toPropertyKey(exec); 214 } 215 216 JSInternalPromise* JSModuleLoader::resolve(ExecState* exec, JSValue name, JSValue referrer, JSValue scriptFetcher) 217 { 218 VM& vm = exec->vm(); 219 auto scope = DECLARE_CATCH_SCOPE(vm); 220 221 JSInternalPromiseDeferred* deferred = JSInternalPromiseDeferred::create(exec, exec->lexicalGlobalObject()); 222 scope.releaseAssertNoException(); 223 const Identifier moduleKey = resolveSync(exec, name, referrer, scriptFetcher); 224 if (UNLIKELY(scope.exception())) { 225 JSValue exception = scope.exception(); 226 scope.clearException(); 227 return deferred->reject(exec, exception); 228 } 229 auto result = deferred->resolve(exec, identifierToJSValue(vm, moduleKey)); 230 scope.releaseAssertNoException(); 231 return result; 216 232 } 217 233
Note:
See TracChangeset
for help on using the changeset viewer.