| Index: Source/core/workers/WorkerMessagingProxy.cpp
|
| diff --git a/Source/core/workers/WorkerMessagingProxy.cpp b/Source/core/workers/WorkerMessagingProxy.cpp
|
| index 99bfc59c0872211636b16a4def684ad4a5ce5f9f..32a02cb1eeea5549dff153f003c8971e9a1bd326 100644
|
| --- a/Source/core/workers/WorkerMessagingProxy.cpp
|
| +++ b/Source/core/workers/WorkerMessagingProxy.cpp
|
| @@ -113,15 +113,16 @@ private:
|
|
|
| class WorkerExceptionTask : public ScriptExecutionContext::Task {
|
| public:
|
| - static PassOwnPtr<WorkerExceptionTask> create(const String& errorMessage, int lineNumber, const String& sourceURL, WorkerMessagingProxy* messagingProxy)
|
| + static PassOwnPtr<WorkerExceptionTask> create(const String& errorMessage, int lineNumber, int columnNumber, const String& sourceURL, WorkerMessagingProxy* messagingProxy)
|
| {
|
| - return adoptPtr(new WorkerExceptionTask(errorMessage, lineNumber, sourceURL, messagingProxy));
|
| + return adoptPtr(new WorkerExceptionTask(errorMessage, lineNumber, columnNumber, sourceURL, messagingProxy));
|
| }
|
|
|
| private:
|
| - WorkerExceptionTask(const String& errorMessage, int lineNumber, const String& sourceURL, WorkerMessagingProxy* messagingProxy)
|
| + WorkerExceptionTask(const String& errorMessage, int lineNumber, int columnNumber, const String& sourceURL, WorkerMessagingProxy* messagingProxy)
|
| : m_errorMessage(errorMessage.isolatedCopy())
|
| , m_lineNumber(lineNumber)
|
| + , m_columnNumber(columnNumber)
|
| , m_sourceURL(sourceURL.isolatedCopy())
|
| , m_messagingProxy(messagingProxy)
|
| {
|
| @@ -136,13 +137,14 @@ private:
|
| // We don't bother checking the askedToTerminate() flag here, because exceptions should *always* be reported even if the thread is terminated.
|
| // This is intentionally different than the behavior in MessageWorkerTask, because terminated workers no longer deliver messages (section 4.6 of the WebWorker spec), but they do report exceptions.
|
|
|
| - bool errorHandled = !workerObject->dispatchEvent(ErrorEvent::create(m_errorMessage, m_sourceURL, m_lineNumber));
|
| + bool errorHandled = !workerObject->dispatchEvent(ErrorEvent::create(m_errorMessage, m_sourceURL, m_lineNumber, m_columnNumber));
|
| if (!errorHandled)
|
| - context->reportException(m_errorMessage, m_lineNumber, m_sourceURL, 0);
|
| + context->reportException(m_errorMessage, m_lineNumber, m_columnNumber, m_sourceURL, 0);
|
| }
|
|
|
| String m_errorMessage;
|
| int m_lineNumber;
|
| + int m_columnNumber;
|
| String m_sourceURL;
|
| WorkerMessagingProxy* m_messagingProxy;
|
| };
|
| @@ -305,9 +307,9 @@ void WorkerMessagingProxy::postTaskToLoader(PassOwnPtr<ScriptExecutionContext::T
|
| m_scriptExecutionContext->postTask(task);
|
| }
|
|
|
| -void WorkerMessagingProxy::postExceptionToWorkerObject(const String& errorMessage, int lineNumber, const String& sourceURL)
|
| +void WorkerMessagingProxy::postExceptionToWorkerObject(const String& errorMessage, int lineNumber, int columnNumber, const String& sourceURL)
|
| {
|
| - m_scriptExecutionContext->postTask(WorkerExceptionTask::create(errorMessage, lineNumber, sourceURL, this));
|
| + m_scriptExecutionContext->postTask(WorkerExceptionTask::create(errorMessage, lineNumber, columnNumber, sourceURL, this));
|
| }
|
|
|
| static void postConsoleMessageTask(ScriptExecutionContext* context, WorkerMessagingProxy* messagingProxy, MessageSource source, MessageLevel level, const String& message, unsigned lineNumber, const String& sourceURL)
|
|
|