D10300: [server] Don't crash when a subsurface gets commited whose parent surface got destroyed
This revision was automatically updated to reflect the committed changes. Closed by commit R127:d38825d934e4: [server] Dont crash when a subsurface gets commited whose parent surface got… (authored by graesslin). Restricted Application edited projects, added Plasma; removed Plasma on Wayland. REPOSITORY R127 KWayland CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D10300?vs=26513=26710 REVISION DETAIL https://phabricator.kde.org/D10300 AFFECTED FILES autotests/client/test_wayland_subsurface.cpp src/server/subcompositor_interface.cpp src/server/surface_interface.cpp To: graesslin, #frameworks, #kwin, #plasma, davidedmundson Cc: lbeltrame, plasma-devel, michaelh, ZrenBot, ngraham, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D10300: [server] Don't crash when a subsurface gets commited whose parent surface got destroyed
graesslin added a comment. Restricted Application edited projects, added Plasma on Wayland; removed Plasma. In https://phabricator.kde.org/D10300#202468, @lbeltrame wrote: > Ping? Why this has not been committed even if in "accepted" state? Because I wasn't at my system yet. REPOSITORY R127 KWayland BRANCH subsurface-parent-destroyed REVISION DETAIL https://phabricator.kde.org/D10300 To: graesslin, #frameworks, #kwin, #plasma, davidedmundson Cc: lbeltrame, plasma-devel, schernikov, michaelh, ZrenBot, ngraham, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D10300: [server] Don't crash when a subsurface gets commited whose parent surface got destroyed
lbeltrame added a comment. Restricted Application edited projects, added Plasma; removed Plasma on Wayland. Ping? Why this has not been committed even if in "accepted" state? REPOSITORY R127 KWayland BRANCH subsurface-parent-destroyed REVISION DETAIL https://phabricator.kde.org/D10300 To: graesslin, #frameworks, #kwin, #plasma, davidedmundson Cc: lbeltrame, plasma-devel, michaelh, ZrenBot, ngraham, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D10300: [server] Don't crash when a subsurface gets commited whose parent surface got destroyed
davidedmundson accepted this revision. This revision is now accepted and ready to land. Restricted Application edited projects, added Plasma on Wayland; removed Plasma. REPOSITORY R127 KWayland BRANCH subsurface-parent-destroyed REVISION DETAIL https://phabricator.kde.org/D10300 To: graesslin, #frameworks, #kwin, #plasma, davidedmundson Cc: plasma-devel, schernikov, michaelh, ZrenBot, ngraham, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D10300: [server] Don't crash when a subsurface gets commited whose parent surface got destroyed
graesslin created this revision. graesslin added reviewers: Frameworks, KWin, Plasma. Restricted Application added projects: Plasma on Wayland, Frameworks. Restricted Application added a subscriber: plasma-devel. graesslin requested review of this revision. Restricted Application edited projects, added Plasma; removed Plasma on Wayland. REVISION SUMMARY Qt seems to damage and commit child subsurfaces although their parent got destroyed. This actually doesn't make any sense as without a parent surface they cannot be shown. But nevertheless we should not crash in such a situation. This change guards the places in the commit handling code where the parent gets accessed. BUG: 389231 TEST PLAN New test case which exposes the problem REPOSITORY R127 KWayland BRANCH subsurface-parent-destroyed REVISION DETAIL https://phabricator.kde.org/D10300 AFFECTED FILES autotests/client/test_wayland_subsurface.cpp src/server/subcompositor_interface.cpp src/server/surface_interface.cpp To: graesslin, #frameworks, #kwin, #plasma Cc: plasma-devel, michaelh, ZrenBot, ngraham, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart