Commit c4d3cd54 authored by ager@chromium.org's avatar ager@chromium.org

Limit the safe point scope in WorkerThreadableLoader to the actual safe point.

clientBridgePtr->run() can allocate and is therefore not part of the
safe point.

TBR=haraken@chromium.org, vegorov@chromium.org
NOTRY=true
BUG=356307

Review URL: https://codereview.chromium.org/212573005

git-svn-id: svn://svn.chromium.org/blink/trunk@170058 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 1e227d4d
...@@ -82,11 +82,13 @@ void WorkerThreadableLoader::loadResourceSynchronously(WorkerGlobalScope* worker ...@@ -82,11 +82,13 @@ void WorkerThreadableLoader::loadResourceSynchronously(WorkerGlobalScope* worker
RefPtr<WorkerThreadableLoader> loader = WorkerThreadableLoader::create(workerGlobalScope, clientWrapper, clientBridge.release(), request, options); RefPtr<WorkerThreadableLoader> loader = WorkerThreadableLoader::create(workerGlobalScope, clientWrapper, clientBridge.release(), request, options);
ThreadState::SafePointScope scope(ThreadState::HeapPointersOnStack); {
blink::WebWaitableEvent* signalled = blink::Platform::current()->waitMultipleEvents(events); ThreadState::SafePointScope scope(ThreadState::HeapPointersOnStack);
if (signalled == shutdownEvent) { blink::WebWaitableEvent* signalled = blink::Platform::current()->waitMultipleEvents(events);
loader->cancel(); if (signalled == shutdownEvent) {
return; loader->cancel();
return;
}
} }
clientBridgePtr->run(); clientBridgePtr->run();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment