| Index: Source/core/workers/WorkerMessagingProxy.cpp
 | 
| diff --git a/Source/core/workers/WorkerMessagingProxy.cpp b/Source/core/workers/WorkerMessagingProxy.cpp
 | 
| index d6352bcac522d9e0f59d1b7582d3954e54fb34aa..8935d1144f997f59df403a62bd573fbf15dcd266 100644
 | 
| --- a/Source/core/workers/WorkerMessagingProxy.cpp
 | 
| +++ b/Source/core/workers/WorkerMessagingProxy.cpp
 | 
| @@ -106,6 +106,8 @@ WorkerMessagingProxy::~WorkerMessagingProxy()
 | 
|      ASSERT(!m_workerObject);
 | 
|      ASSERT((m_executionContext->isDocument() && isMainThread())
 | 
|          || (m_executionContext->isWorkerGlobalScope() && toWorkerGlobalScope(m_executionContext.get())->thread()->isCurrentThread()));
 | 
| +    if (m_loaderProxy)
 | 
| +        m_loaderProxy->detachProvider(this);
 | 
|  }
 | 
|  
 | 
|  void WorkerMessagingProxy::startWorkerGlobalScope(const KURL& scriptURL, const String& userAgent, const String& sourceCode, WorkerThreadStartMode startMode)
 | 
| @@ -122,7 +124,8 @@ void WorkerMessagingProxy::startWorkerGlobalScope(const KURL& scriptURL, const S
 | 
|      OwnPtrWillBeRawPtr<WorkerThreadStartupData> startupData = WorkerThreadStartupData::create(scriptURL, userAgent, sourceCode, startMode, document->contentSecurityPolicy()->deprecatedHeader(), document->contentSecurityPolicy()->deprecatedHeaderType(), starterOrigin, m_workerClients.release());
 | 
|      double originTime = document->loader() ? document->loader()->timing()->referenceMonotonicTime() : monotonicallyIncreasingTime();
 | 
|  
 | 
| -    RefPtr<DedicatedWorkerThread> thread = DedicatedWorkerThread::create(*this, *m_workerObjectProxy.get(), originTime, startupData.release());
 | 
| +    m_loaderProxy = WorkerLoaderProxy::create(this);
 | 
| +    RefPtr<DedicatedWorkerThread> thread = DedicatedWorkerThread::create(m_loaderProxy, *m_workerObjectProxy.get(), originTime, startupData.release());
 | 
|      thread->start();
 | 
|      workerThreadCreated(thread);
 | 
|      m_workerInspectorProxy->workerThreadCreated(m_executionContext.get(), m_workerThread.get(), scriptURL);
 | 
| 
 |