Summary: | REGRESSION(r221514): [GTK] UI process crash in WebKit::WaylandCompositor::Surface::flushPendingFrameCallbacks | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Michael Catanzaro <mcatanzaro> | ||||
Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | bugs-noreply, bugzilla, calvaris, cgarcia, mcatanzaro | ||||
Priority: | P2 | ||||||
Version: | Other | ||||||
Hardware: | PC | ||||||
OS: | Linux | ||||||
See Also: |
https://bugzilla.redhat.com/show_bug.cgi?id=1493283 https://bugzilla.redhat.com/show_bug.cgi?id=1530638 https://bugzilla.redhat.com/show_bug.cgi?id=1535075 https://bugzilla.redhat.com/show_bug.cgi?id=1548530 https://bugs.webkit.org/show_bug.cgi?id=175942 https://bugzilla.redhat.com/show_bug.cgi?id=1559255 https://bugzilla.redhat.com/show_bug.cgi?id=1560228 https://bugzilla.redhat.com/show_bug.cgi?id=1563787 https://bugzilla.redhat.com/show_bug.cgi?id=1564572 |
||||||
Attachments: |
|
Description
Michael Catanzaro
2018-02-23 12:44:09 PST
I guess the WaylandCompositor::Surface is already destroyed before the call to flushPendingFrameCallbacks? It's not clear. The use of auto list = WTFMove(m_*CallbackList) throughout this file is confusing: I guess that swaps the member variable vector with the default-initialized empty vector, so it's probably OK, but maybe too clever. Created attachment 334595 [details]
Patch
Comment on attachment 334595 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=334595&action=review Thanks > Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp:354 > auto* surface = static_cast<WaylandCompositor::Surface*>(wl_resource_get_user_data(resource)); > + WaylandCompositor::singleton().willDestroySurface(surface); > delete surface; Aha, so this is what I missed when staring at this bug the other day. > Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp:571 > + break; You could equivalently use return instead. Committed r229126: <https://trac.webkit.org/changeset/229126> Michael, after giving my first son's blood I managed to get a backtrace with asan for the crash I am having lately that could be causing https://gitlab.gnome.org/GNOME/gtk/issues/1232 and it looks like it is this one? Carlos, do you know when this is going to be released in GNOME JHBuild conf? (In reply to Xabier RodrÃguez Calvar from comment #5) > Michael, after giving my first son's blood I managed to get a backtrace with > asan for the crash Poor Simon :( > I am having lately that could be causing > https://gitlab.gnome.org/GNOME/gtk/issues/1232 and it looks like it is this > one? > > Carlos, do you know when this is going to be released in GNOME JHBuild conf? This was committed way back in March. Exactly what version of WebKitGTK+ are you using? Could you please post the trace from asan? (In reply to Michael Catanzaro from comment #6) > This was committed way back in March. And it was backported for 2.19.92. |