RESOLVED FIXED Bug 153785
[GTK] Several tests fail due to assert not reached in DrawingArea::dispatchAfterEnsuringDrawing()
https://bugs.webkit.org/show_bug.cgi?id=153785
Summary [GTK] Several tests fail due to assert not reached in DrawingArea::dispatchAf...
Adrien Plazas
Reported 2016-02-02 02:00:42 PST
Several tests are crashing due to an assert in the GTK+ debug bot. It seems to be caused by WebKit::DrawingAreaProxy::dispatchAfterEnsuringDrawing() not being overridden. STDERR: SHOULD NEVER BE REACHED STDERR: ../../Source/WebKit2/UIProcess/DrawingAreaProxy.h(90) : virtual void WebKit::DrawingAreaProxy::dispatchAfterEnsuringDrawing(std::function<void(WebKit::CallbackBase::Error)>) STDERR: 1 0x7f5e485db161 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(WTFCrash+0x1e) [0x7f5e485db161] STDERR: 2 0x7f5e40912b86 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::DrawingAreaProxy::hideContentUntilPendingUpdate()+0) [0x7f5e40912b86] STDERR: 3 0x7f5e4097004c /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::WebPageProxy::callAfterNextPresentationUpdate(std::function<void (WebKit::CallbackBase::Error)>)+0x52) [0x7f5e4097004c] STDERR: 4 0x7f5e40a0ab21 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WKPageCallAfterNextPresentationUpdate+0x59) [0x7f5e40a0ab21] STDERR: 5 0x480f6b /home/slave/webkitgtk/gtk-linux-64-debug-tests/build/WebKitBuild/Debug/bin/WebKitTestRunner(WTR::TestInvocation::didReceiveMessageFromInjectedBundle(OpaqueWKString const*, void const*)+0x20f1) [0x480f6b] STDERR: 6 0x470ca9 /home/slave/webkitgtk/gtk-linux-64-debug-tests/build/WebKitBuild/Debug/bin/WebKitTestRunner(WTR::TestController::didReceiveMessageFromInjectedBundle(OpaqueWKString const*, void const*)+0x7cd) [0x470ca9] STDERR: 7 0x4702f5 /home/slave/webkitgtk/gtk-linux-64-debug-tests/build/WebKitBuild/Debug/bin/WebKitTestRunner(WTR::TestController::didReceivePageMessageFromInjectedBundle(OpaqueWKPage const*, OpaqueWKString const*, void const*, void const*)+0x2f) [0x4702f5] STDERR: 8 0x7f5e40953b39 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::WebPageInjectedBundleClient::didReceiveMessageFromInjectedBundle(WebKit::WebPageProxy*, WTF::String const&, API::Object*)+0x97) [0x7f5e40953b39] STDERR: 9 0x7f5e4095635d /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::WebPageProxy::handleMessage(IPC::Connection&, WTF::String const&, WebKit::UserData const&)+0xb7) [0x7f5e4095635d] STDERR: 10 0x7f5e40dc1976 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(void IPC::callMemberFunctionImpl<WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(IPC::Connection&, WTF::String const&, WebKit::UserData const&), std::tuple<WTF::String, WebKit::UserData>, 0ul, 1ul>(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(IPC::Connection&, WTF::String const&, WebKit::UserData const&), IPC::Connection&, std::tuple<WTF::String, WebKit::UserData>&&, std::index_sequence<0ul, 1ul>)+0x92) [0x7f5e40dc1976] STDERR: 11 0x7f5e40db7364 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(void IPC::callMemberFunction<WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(IPC::Connection&, WTF::String const&, WebKit::UserData const&), std::tuple<WTF::String, WebKit::UserData>, std::make_index_sequence<2ul> >(IPC::Connection&, std::tuple<WTF::String, WebKit::UserData>&&, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(IPC::Connection&, WTF::String const&, WebKit::UserData const&))+0x55) [0x7f5e40db7364] STDERR: 12 0x7f5e40db036e /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(void IPC::handleMessage<Messages::WebPageProxy::HandleMessage, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(IPC::Connection&, WTF::String const&, WebKit::UserData const&)>(IPC::Connection&, IPC::MessageDecoder&, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(IPC::Connection&, WTF::String const&, WebKit::UserData const&))+0xb7) [0x7f5e40db036e] STDERR: 13 0x7f5e40da31e5 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::WebPageProxy::didReceiveMessage(IPC::Connection&, IPC::MessageDecoder&)+0x48bb) [0x7f5e40da31e5] STDERR: 14 0x7f5e408630dc /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::MessageDecoder&)+0x120) [0x7f5e408630dc] STDERR: 15 0x7f5e4090fe4f /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::ChildProcessProxy::dispatchMessage(IPC::Connection&, IPC::MessageDecoder&)+0x2f) [0x7f5e4090fe4f] STDERR: 16 0x7f5e409d1ff9 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::MessageDecoder&)+0x2b) [0x7f5e409d1ff9] STDERR: 17 0x7f5e40850710 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(IPC::Connection::dispatchMessage(IPC::MessageDecoder&)+0x3a) [0x7f5e40850710] STDERR: 18 0x7f5e40850873 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(IPC::Connection::dispatchMessage(std::unique_ptr<IPC::MessageDecoder, std::default_delete<IPC::MessageDecoder> >)+0x161) [0x7f5e40850873] STDERR: 19 0x7f5e40850a5a /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(IPC::Connection::dispatchOneMessage()+0xc8) [0x7f5e40850a5a] STDERR: 20 0x7f5e4085055e /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(+0x4cba55e) [0x7f5e4085055e] STDERR: 21 0x7f5e40851d19 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(+0x4cbbd19) [0x7f5e40851d19] STDERR: 22 0x47859e /home/slave/webkitgtk/gtk-linux-64-debug-tests/build/WebKitBuild/Debug/bin/WebKitTestRunner(std::function<void ()>::operator()() const+0x32) [0x47859e] STDERR: 23 0x7f5e485f4fb3 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(WTF::RunLoop::performWork()+0xdb) [0x7f5e485f4fb3] STDERR: 24 0x7f5e4862d50e /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1b5a50e) [0x7f5e4862d50e] STDERR: 25 0x7f5e4862d533 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1b5a533) [0x7f5e4862d533] STDERR: 26 0x7f5e4862d4ae /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1b5a4ae) [0x7f5e4862d4ae] STDERR: 27 0x7f5e4862d4dd /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1b5a4dd) [0x7f5e4862d4dd] STDERR: 28 0x7f5e3af35a26 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(+0x53a26) [0x7f5e3af35a26] STDERR: 29 0x7f5e3af36854 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(g_main_context_dispatch+0x33) [0x7f5e3af36854] STDERR: 30 0x7f5e3af36a39 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(+0x54a39) [0x7f5e3af36a39] STDERR: 31 0x7f5e3af36e60 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(g_main_loop_run+0x1d7) [0x7f5e3af36e60] STDERR: LEAK: 4 CachedResource STDERR: LEAK: 28 WebCoreNode STDERR: LEAK: 1 WebPage STDERR: LEAK: 1 WebFrame
Attachments
Implements DrawingAreaProxyImpl::dispatchAfterEnsuringDrawing(). (2.01 KB, patch)
2016-02-02 02:06 PST, Adrien Plazas
no flags
Adrien Plazas
Comment 1 2016-02-02 02:06:06 PST
Created attachment 270479 [details] Implements DrawingAreaProxyImpl::dispatchAfterEnsuringDrawing().
WebKit Commit Bot
Comment 2 2016-02-02 02:07:56 PST
Attachment 270479 [details] did not pass style-queue: ERROR: Source/WebKit2/UIProcess/DrawingAreaProxyImpl.cpp:325: Extra space before ( in function call [whitespace/parens] [4] ERROR: Source/WebKit2/UIProcess/DrawingAreaProxyImpl.cpp:332: More than one command on the same line [whitespace/newline] [4] ERROR: Source/WebKit2/UIProcess/DrawingAreaProxyImpl.h:56: Extra space before ( in function call [whitespace/parens] [4] Total errors found: 3 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.
Carlos Garcia Campos
Comment 3 2016-02-02 02:14:04 PST
Comment on attachment 270479 [details] Implements DrawingAreaProxyImpl::dispatchAfterEnsuringDrawing(). Thanks!
WebKit Commit Bot
Comment 4 2016-02-02 03:00:47 PST
Comment on attachment 270479 [details] Implements DrawingAreaProxyImpl::dispatchAfterEnsuringDrawing(). Clearing flags on attachment: 270479 Committed r196005: <http://trac.webkit.org/changeset/196005>
WebKit Commit Bot
Comment 5 2016-02-02 03:00:52 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.