[Webkit-unassigned] [Bug 83195] New: Assertion reloading an inspected page if the page uses workers
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Apr 4 13:14:13 PDT 2012
https://bugs.webkit.org/show_bug.cgi?id=83195
Summary: Assertion reloading an inspected page if the page uses
workers
Product: WebKit
Version: 528+ (Nightly build)
Platform: Unspecified
OS/Version: Unspecified
Status: NEW
Keywords: InRadar
Severity: Normal
Priority: P2
Component: Web Inspector
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: simon.fraser at apple.com
CC: timothy at apple.com, pfeldman at chromium.org
If you reload a page with the inspector open, and the page uses workers, then JSC asserts (even in release builds):
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 com.apple.JavaScriptCore 0x000000010dea61eb JSC::Weak<JSC::JSCell>::Weak(JSC::JSGlobalData&, JSC::JSCell*, JSC::WeakHandleOwner*, void*) + 59
1 com.apple.JavaScriptCore 0x000000010dea60f8 JSC::Heap::addFinalizer(JSC::JSCell*, void (*)(JSC::JSCell*)) + 40
2 com.apple.JavaScriptCore 0x000000010de376ac JSC::evaluate(JSC::ExecState*, JSC::ScopeChainNode*, JSC::SourceCode const&, JSC::JSValue, JSC::JSValue*) + 172
3 com.apple.WebCore 0x000000010e11c339 WebCore::ScriptController::evaluateInWorld(WebCore::ScriptSourceCode const&, WebCore::DOMWrapperWorld*) + 425
4 com.apple.WebCore 0x000000010e11bf89 WebCore::ScriptController::evaluate(WebCore::ScriptSourceCode const&) + 41
5 com.apple.WebCore 0x000000010e5679b2 WebCore::InspectorClient::doDispatchMessageOnFrontendPage(WebCore::Page*, WTF::String const&) + 242
6 com.apple.WebKit2 0x000000010daf7d9e WebKit::WebInspectorClient::sendMessageToFrontend(WTF::String const&) + 58
7 com.apple.WebCore 0x000000010e8d5269 WebCore::InspectorFrontend::Inspector::didDestroyWorker(int) + 617
8 com.apple.WebCore 0x000000010e893533 WebCore::InspectorAgent::didDestroyWorker(long) + 259
9 com.apple.WebCore 0x000000010e448846 WebCore::AbstractWorker::~AbstractWorker() + 38
10 com.apple.WebCore 0x000000010e4484ae WebCore::Worker::~Worker() + 94
11 com.apple.WebCore 0x000000010e448416 WebCore::JSWorkerOwner::finalize(JSC::Handle<JSC::Unknown>, void*) + 166
12 com.apple.JavaScriptCore 0x000000010dd7e549 JSC::HandleHeap::finalizeWeakHandles() + 169
13 com.apple.JavaScriptCore 0x000000010dea5f7d JSC::Heap::collect(JSC::Heap::SweepToggle) + 77
14 com.apple.JavaScriptCore 0x000000010dd7dde8 JSC::DefaultGCActivityCallbackPlatformData::trigger(__CFRunLoopTimer*, void*) + 184
15 com.apple.CoreFoundation 0x00007fff917a9c24 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
16 com.apple.CoreFoundation 0x00007fff917a9776 __CFRunLoopDoTimer + 534
17 com.apple.CoreFoundation 0x00007fff9178a001 __CFRunLoopRun + 1617
18 com.apple.CoreFoundation 0x00007fff91789676 CFRunLoopRunSpecific + 230
19 com.apple.HIToolbox 0x00007fff9474831f RunCurrentEventLoopInMode + 277
20 com.apple.HIToolbox 0x00007fff9474f5c9 ReceiveNextEventCommon + 355
21 com.apple.HIToolbox 0x00007fff9474f456 BlockUntilNextEventMatchingListInMode + 62
22 com.apple.AppKit 0x00007fff8b4e1f5d _DPSNextEvent + 659
23 com.apple.AppKit 0x00007fff8b4e1861 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135
24 com.apple.AppKit 0x00007fff8b4de19d -[NSApplication run] + 470
25 com.apple.WebCore 0x000000010eb6624f WebCore::RunLoop::run() + 63
26 com.apple.WebKit2 0x000000010db2eeaa WebKit::WebProcessMain(WebKit::CommandLine const&) + 2538
27 com.apple.WebKit2 0x000000010dafa8ef WebKitMain + 285
28 com.apple.WebProcess 0x000000010d9fae5f 0x10d9fa000 + 3679
29 com.apple.WebProcess 0x000000010d9fad7c 0x10d9fa000 + 3452
The problem is that InspectorAgent::didDestroyWorker(long) is causing script to be run while we're inside a GC. That's a big no-no.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list