Index: Source/core/loader/WorkerThreadableLoader.cpp |
diff --git a/Source/core/loader/WorkerThreadableLoader.cpp b/Source/core/loader/WorkerThreadableLoader.cpp |
index b4ee50843c962ada01edb1c1be031428711ec5e9..d8cc18bd35608a6d7d21922c52022ed5e188e2a5 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(); |
@@ -154,6 +159,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)); |
+} |
abarth-chromium
2014/07/31 16:08:13
This code is really ugly, but that's not your faul
|
+ |
void WorkerThreadableLoader::MainThreadBridge::mainThreadCancel(ExecutionContext* context, MainThreadBridge* thisPtr) |
{ |
ASSERT(isMainThread()); |