diff options
author | Campbell Barton <campbell@blender.org> | 2022-08-04 15:33:25 +0300 |
---|---|---|
committer | Campbell Barton <campbell@blender.org> | 2022-08-04 15:33:25 +0300 |
commit | ff286a9fcfd13f264258f807dcea8f9aa5328d96 (patch) | |
tree | 130f6d0b1eb1c9db599be56b6f9f22af16e583d4 /intern | |
parent | a95103f6f4abda2be9020f13df1256bf0f62c255 (diff) |
Fix double-free after drag & drop with GHOST/Wayland
Resolve crash on exit after drag & drop in Wayland.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/ghost/intern/GHOST_SystemWayland.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/intern/ghost/intern/GHOST_SystemWayland.cpp b/intern/ghost/intern/GHOST_SystemWayland.cpp index e6366d25788..627b97a9190 100644 --- a/intern/ghost/intern/GHOST_SystemWayland.cpp +++ b/intern/ghost/intern/GHOST_SystemWayland.cpp @@ -1221,6 +1221,9 @@ static void data_device_handle_drop(void *data, struct wl_data_device * /*wl_dat wl_data_offer_finish(data_offer->id); wl_data_offer_destroy(data_offer->id); + if (input->data_offer_dnd == data_offer) { + input->data_offer_dnd = nullptr; + } delete data_offer; data_offer = nullptr; |