mirror of
https://codeberg.org/dwl/dwl.git
synced 2026-09-19 05:42:49 +00:00
fix a use-after-free
Prevent a use-after-free when closing a nested dwl with Ctrl+c. It happened because cleanup() → input_method_relay_finish() frees input_method_relay, and then closemon() → focusclient() → input_method_relay_set_focus() uses relay->surface.
This commit is contained in:
@@ -792,6 +792,7 @@ cleanup(void)
|
||||
destroykeyboardgroup(&kb_group->destroy, NULL);
|
||||
|
||||
input_method_relay_finish(input_method_relay);
|
||||
input_method_relay = NULL;
|
||||
|
||||
/* If it's not destroyed manually, it will cause a use-after-free of wlr_seat.
|
||||
* Destroy it until it's fixed on the wlroots side */
|
||||
|
||||
Reference in New Issue
Block a user