diff options
author | Tudor Brindus <me@tbrindus.ca> | 2020-05-25 15:20:15 -0400 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2020-05-25 21:30:53 +0200 |
commit | 34e0cad9acd88ccf18fc24d6917520cfc819abc1 (patch) | |
tree | 8dd3f7cb92d671b4d8f88e085c078d5510b952a9 | |
parent | input/tablet: add seatop_down entry for tablet input (diff) | |
download | sway-34e0cad9acd88ccf18fc24d6917520cfc819abc1.tar.gz sway-34e0cad9acd88ccf18fc24d6917520cfc819abc1.tar.zst sway-34e0cad9acd88ccf18fc24d6917520cfc819abc1.zip |
input/cursor: fix heap-buffer overflow in constraint set_region
-rw-r--r-- | sway/input/cursor.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sway/input/cursor.c b/sway/input/cursor.c index 8de7d950..7b094d85 100644 --- a/sway/input/cursor.c +++ b/sway/input/cursor.c | |||
@@ -831,8 +831,12 @@ static void handle_constraint_commit(struct wl_listener *listener, | |||
831 | 831 | ||
832 | static void handle_pointer_constraint_set_region(struct wl_listener *listener, | 832 | static void handle_pointer_constraint_set_region(struct wl_listener *listener, |
833 | void *data) { | 833 | void *data) { |
834 | struct sway_cursor *cursor = | 834 | struct sway_pointer_constraint *sway_constraint = |
835 | wl_container_of(listener, cursor, constraint_commit); | 835 | wl_container_of(listener, sway_constraint, set_region); |
836 | struct wlr_pointer_constraint_v1 *constraint = data; | ||
837 | struct sway_seat *seat = constraint->seat->data; | ||
838 | struct sway_cursor *cursor = seat->cursor; | ||
839 | |||
836 | cursor->active_confine_requires_warp = true; | 840 | cursor->active_confine_requires_warp = true; |
837 | } | 841 | } |
838 | 842 | ||