The SharedWorkerHttpAuth test results in the worker being shutdown in the middle of an importScript() call, which results in an exception being generated and passed to V8Proxy::setDOMException(). There's a race condition that occurs - if WorkerScriptController::forbidExecution() is invoked before the importScript() call returns and calls setDOMException(), then a failed assertion happens. It seems that this line in setDOMException() yields an empty exception object: exception = toV8(EventException::create(description)); Which causes this to fail further on in the function. ASSERT(!exception.IsEmpty()); I suspect the issue is that toV8() can't create an object if the worker context is shutting down. I think the right thing to do is to get rid of that assertion, and instead have a failed assertion in the default: case statement (failing if setDOMException() is passed an unknown exception type), and then quietly return without throwing the exception.
Created attachment 51516 [details] Patch
Attachment 51516 [details] did not pass style-queue: Failed to run "WebKitTools/Scripts/check-webkit-style" exit_code: 1 WebCore/ChangeLog:8: Line contains tab character. [whitespace/tab] [5] WebCore/ChangeLog:12: Line contains tab character. [whitespace/tab] [5] Total errors found: 2 in 2 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 51516 [details] Patch r=me Please change tabs to spaces, per style bot note. It is a good rule to have [v8] in front of title of the bug if the change only affects v8-specific files. Some people use it to immediately see if the change is relevant or not relevant for them (having filters etc). I've changed the bug title.
Created attachment 51527 [details] Patch
Created attachment 51528 [details] Patch
Comment on attachment 51528 [details] Patch r=me
Comment on attachment 51528 [details] Patch Clearing flags on attachment: 51528 Committed r56461: <http://trac.webkit.org/changeset/56461>
All reviewed patches have been landed. Closing bug.