Index: Source/core/loader/WorkerThreadableLoader.cpp |
diff --git a/Source/core/loader/WorkerThreadableLoader.cpp b/Source/core/loader/WorkerThreadableLoader.cpp |
index 64e21d055f371f728a7203726a5ed40514fe8cc8..f15dd1f6b7fcbece22a966ddd391dcff7142ea17 100644 |
--- a/Source/core/loader/WorkerThreadableLoader.cpp |
+++ b/Source/core/loader/WorkerThreadableLoader.cpp |
@@ -95,6 +95,11 @@ void WorkerThreadableLoader::loadResourceSynchronously(WorkerGlobalScope& worker |
clientBridgePtr->run(); |
} |
+void WorkerThreadableLoader::overrideTimeout(unsigned long timeoutMilliseconds) |
+{ |
+ m_bridge.overrideTimeout(timeoutMilliseconds); |
+} |
+ |
void WorkerThreadableLoader::cancel() |
{ |
m_bridge.cancel(); |
@@ -152,6 +157,23 @@ void WorkerThreadableLoader::MainThreadBridge::destroy() |
createCallbackTask(&MainThreadBridge::mainThreadDestroy, AllowCrossThreadAccess(this))); |
} |
+void WorkerThreadableLoader::MainThreadBridge::mainThreadOverrideTimeout(ExecutionContext* context, MainThreadBridge* thisPtr, unsigned long timeoutMilliseconds) |
+{ |
+ ASSERT(isMainThread()); |
+ ASSERT_UNUSED(context, context->isDocument()); |
+ |
+ if (!thisPtr->m_mainThreadLoader) |
+ return; |
+ thisPtr->m_mainThreadLoader->overrideTimeout(timeoutMilliseconds); |
+} |
+ |
+void WorkerThreadableLoader::MainThreadBridge::overrideTimeout(unsigned long timeoutMilliseconds) |
+{ |
+ m_loaderProxy.postTaskToLoader( |
+ createCallbackTask(&MainThreadBridge::mainThreadOverrideTimeout, AllowCrossThreadAccess(this), |
+ timeoutMilliseconds)); |
+} |
+ |
void WorkerThreadableLoader::MainThreadBridge::mainThreadCancel(ExecutionContext* context, MainThreadBridge* thisPtr) |
{ |
ASSERT(isMainThread()); |