OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2008 Apple Inc. All Rights Reserved. | 2 * Copyright (C) 2008 Apple Inc. All Rights Reserved. |
3 * Copyright (C) 2009 Google Inc. All Rights Reserved. | 3 * Copyright (C) 2009 Google Inc. All Rights Reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 } | 158 } |
159 | 159 |
160 void WorkerMessagingProxy::reportException(const String& errorMessage, int lineN
umber, int columnNumber, const String& sourceURL) | 160 void WorkerMessagingProxy::reportException(const String& errorMessage, int lineN
umber, int columnNumber, const String& sourceURL) |
161 { | 161 { |
162 if (!m_workerObject) | 162 if (!m_workerObject) |
163 return; | 163 return; |
164 | 164 |
165 // We don't bother checking the askedToTerminate() flag here, because except
ions should *always* be reported even if the thread is terminated. | 165 // We don't bother checking the askedToTerminate() flag here, because except
ions should *always* be reported even if the thread is terminated. |
166 // This is intentionally different than the behavior in MessageWorkerTask, b
ecause terminated workers no longer deliver messages (section 4.6 of the WebWork
er spec), but they do report exceptions. | 166 // This is intentionally different than the behavior in MessageWorkerTask, b
ecause terminated workers no longer deliver messages (section 4.6 of the WebWork
er spec), but they do report exceptions. |
167 | 167 |
168 RefPtr<ErrorEvent> event = ErrorEvent::create(errorMessage, sourceURL, lineN
umber, columnNumber, nullptr); | 168 RefPtr<ErrorEvent> event = ErrorEvent::create(errorMessage, sourceURL, lineN
umber, columnNumber, 0); |
169 bool errorHandled = !m_workerObject->dispatchEvent(event); | 169 bool errorHandled = !m_workerObject->dispatchEvent(event); |
170 if (!errorHandled) | 170 if (!errorHandled) |
171 m_executionContext->reportException(event, nullptr, NotSharableCrossOrig
in); | 171 m_executionContext->reportException(event, nullptr, NotSharableCrossOrig
in); |
172 } | 172 } |
173 | 173 |
174 void WorkerMessagingProxy::reportConsoleMessage(MessageSource source, MessageLev
el level, const String& message, int lineNumber, const String& sourceURL) | 174 void WorkerMessagingProxy::reportConsoleMessage(MessageSource source, MessageLev
el level, const String& message, int lineNumber, const String& sourceURL) |
175 { | 175 { |
176 if (m_askedToTerminate) | 176 if (m_askedToTerminate) |
177 return; | 177 return; |
178 m_executionContext->addConsoleMessage(source, level, message, sourceURL, lin
eNumber); | 178 m_executionContext->addConsoleMessage(source, level, message, sourceURL, lin
eNumber); |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 { | 296 { |
297 m_workerThreadHadPendingActivity = hasPendingActivity; | 297 m_workerThreadHadPendingActivity = hasPendingActivity; |
298 } | 298 } |
299 | 299 |
300 bool WorkerMessagingProxy::hasPendingActivity() const | 300 bool WorkerMessagingProxy::hasPendingActivity() const |
301 { | 301 { |
302 return (m_unconfirmedMessageCount || m_workerThreadHadPendingActivity) && !m
_askedToTerminate; | 302 return (m_unconfirmedMessageCount || m_workerThreadHadPendingActivity) && !m
_askedToTerminate; |
303 } | 303 } |
304 | 304 |
305 } // namespace WebCore | 305 } // namespace WebCore |
OLD | NEW |