Am 2017-08-02 18:44, schrieb Marco Martin:
Hi all,
reporting it here my latest findings on a crash in the xdgv6 branch in
kwin,
which i think it *may* reveal something else wrong besides the
implementation
of the thing that it's crashing in particular (ping)
when there are many windows opening and closing, we have a kwin crash
with the
backtrace pasted below.
I get it mostly while using the file open dialog (like typing on the
file name
textbox, i guess the culript is the suggestion dropdown window
appearing and
disappearing several times)
instead, on David machine it seems to happen mostly after opening and
closing
several times kickoff
the crash at
/home/diau/git/kf5/frameworks/kwayland/src/server/xdgshell_v6_interface.cpp:365
0x00007f6fb5b8c0a2 in zxdg_shell_v6_send_ping (resource_=0x1e908a0,
serial=713)
suggests that resource is not valid anymore.
down the stack, the chain of events happened after one window has been
closed
and the next one should be activated
it's important to check whether the resource is still valid prior to
sending in events. We do that for Resources everywhere. There we have
the unbound event which sets the resource to null and the various
requests check whether it is null.
So far we never send requests on the global, so it's possible that we
don't track the unbinding of the resource correctly there. I suggest to
disable ping till that's sorted (as mentioned before I consider the ping
interface pointless in modern threaded applications anyway).
Cheers
Martin