diff options
author | A. M. Joseph <adam@westerntelegraphic.net> | 2019-10-16 23:55:40 -0700 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2019-10-17 11:40:16 +0300 |
commit | 74c0e7921ae13986eb7d79bfa263f7ddb9312440 (patch) | |
tree | 02eea2824a322934758a99cf0e82bff2826105e0 /include/sway | |
parent | d19f4f7bf866660d2199cb726bc3708eb42f98dd (diff) |
xwayland.c handle_map(): NULL out xsurface->data() to prevent crashing.
When changing a surface from managed to unmanaged in handle_map(), the
call to handle_destroy(.., view) causes the sway_xwayland_view pointed
to by the untyped wlr_xwayland_surface.data field to become invalid
garbage, yet the untyped wlr_xwayland_surface.data continues to point
at it. In particular: view_get_*(view_from_wlr_surface(..)), even
with appropriate NULL checking, will crash sway when this codepath is
exercised (reliable test case: drop-down menus in Google Earth).
Diffstat (limited to 'include/sway')
0 files changed, 0 insertions, 0 deletions