Bug 131220

Summary: [WK2][GTK] ASSERTION FAILED: m_status == Scheduled in GMainLoopSource
Product: WebKit Reporter: Sergio Villar Senin <svillar>
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: benjamin, cgarcia, cmarcelo, commit-queue
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 130081    
Attachments:
Description Flags
Patch pnormand: review+

Description Sergio Villar Senin 2014-04-04 02:55:00 PDT
Tests crashing:
* inspector-protocol/dom/remove-multiple-nodes.html

STDERR: ASSERTION FAILED: m_status == Scheduled
STDERR: ../../Source/WTF/wtf/gobject/GMainLoopSource.cpp(206) : bool WTF::GMainLoopSource::boolCallback()
STDERR: 1   0x7f72ab55ee2d /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-3.0.so.0(WTFCrash+0x1e) [0x7f72ab55ee2d]
STDERR: 2   0x7f72ab5a16c9 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-3.0.so.0(_ZN3WTF15GMainLoopSource12boolCallbackEv+0x95) [0x7f72ab5a16c9]
STDERR: 3   0x7f72ab5a1966 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-3.0.so.0(_ZN3WTF15GMainLoopSource18boolSourceCallbackEPS0_+0x18) [0x7f72ab5a1966]
STDERR: 4   0x7f729fee9fcb /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Dependencies/Root/lib64/libglib-2.0.so.0(+0x54fcb) [0x7f729fee9fcb]
STDERR: 5   0x7f729fee8295 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Dependencies/Root/lib64/libglib-2.0.so.0(+0x53295) [0x7f729fee8295]
STDERR: 6   0x7f729fee8fec /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Dependencies/Root/lib64/libglib-2.0.so.0(g_main_context_dispatch+0x33) [0x7f729fee8fec]
STDERR: 7   0x7f729fee91de /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Dependencies/Root/lib64/libglib-2.0.so.0(+0x541de) [0x7f729fee91de]
STDERR: 8   0x7f729fee9607 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Dependencies/Root/lib64/libglib-2.0.so.0(g_main_loop_run+0x1d9) [0x7f729fee9607]
STDERR: 9   0x7f72a569d9b8 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-3.0.so.25(_ZN3WTF7RunLoop3runEv+0x42) [0x7f72a569d9b8]
STDERR: 10  0x7f72a55e520a /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-3.0.so.25(WebProcessMainGtk+0xed) [0x7f72a55e520a]
STDERR: 11  0x400b4d /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/bin/WebKitWebProcess(main+0x20) [0x400b4d]
STDERR: 12  0x7f729c97b995 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7f729c97b995]
STDERR: 13  0x400a69 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/bin/WebKitWebProcess() [0x400a69]
STDERR: LEAK: 1 WebPageProxy
STDERR: LEAK: 1 WebContext
Comment 1 Carlos Garcia Campos 2014-05-29 01:03:14 PDT
Yes, this assert is wrong for repeating sources, the first time is correct, the status is scheduled, but then it's dispatched and it can be dispatched more than once. So we should check the status is either scheduled or dispatched.
Comment 2 Carlos Garcia Campos 2014-05-29 01:08:05 PDT
Created attachment 232238 [details]
Patch
Comment 3 Carlos Garcia Campos 2014-05-29 01:27:54 PDT
Forgot to unskip the test, I'll do it before landing.
Comment 4 Carlos Garcia Campos 2014-05-29 02:39:04 PDT
Committed r169443: <http://trac.webkit.org/changeset/169443>