summaryrefslogtreecommitdiffstats
path: root/WebKit/chromium/src/WebWorkerBase.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebKit/chromium/src/WebWorkerBase.cpp')
-rw-r--r--WebKit/chromium/src/WebWorkerBase.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/WebKit/chromium/src/WebWorkerBase.cpp b/WebKit/chromium/src/WebWorkerBase.cpp
index 85a263b..40019e8 100644
--- a/WebKit/chromium/src/WebWorkerBase.cpp
+++ b/WebKit/chromium/src/WebWorkerBase.cpp
@@ -132,8 +132,7 @@ void WebWorkerBase::initializeLoader(const WebURL& url)
int len = static_cast<int>(content.length());
RefPtr<SharedBuffer> buf(SharedBuffer::create(content.data(), len));
SubstituteData substData(buf, String("text/html"), String("UTF-8"), KURL());
- ResourceRequest request(url, CString());
- webFrame->frame()->loader()->load(request, substData, false);
+ webFrame->frame()->loader()->load(ResourceRequest(url), substData, false);
// This document will be used as 'loading context' for the worker.
m_loadingDocument = webFrame->frame()->document();
@@ -158,7 +157,7 @@ void WebWorkerBase::postMessageToWorkerObject(PassRefPtr<SerializedScriptValue>
PassOwnPtr<MessagePortChannelArray> channels)
{
dispatchTaskToMainThread(createCallbackTask(&postMessageTask, this,
- message->toString(), channels));
+ message->toWireString(), channels));
}
void WebWorkerBase::postMessageTask(ScriptExecutionContext* context,
@@ -272,6 +271,8 @@ void WebWorkerBase::workerContextClosedTask(ScriptExecutionContext* context,
{
if (thisPtr->commonClient())
thisPtr->commonClient()->workerContextClosed();
+
+ thisPtr->stopWorkerThread();
}
void WebWorkerBase::workerContextDestroyed()