aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Tudor Brindus <me@tbrindus.ca>2020-05-25 15:20:15 -0400
committerLibravatar Simon Ser <contact@emersion.fr>2020-05-25 21:30:53 +0200
commit34e0cad9acd88ccf18fc24d6917520cfc819abc1 (patch)
tree8dd3f7cb92d671b4d8f88e085c078d5510b952a9
parentinput/tablet: add seatop_down entry for tablet input (diff)
downloadsway-34e0cad9acd88ccf18fc24d6917520cfc819abc1.tar.gz
sway-34e0cad9acd88ccf18fc24d6917520cfc819abc1.tar.zst
sway-34e0cad9acd88ccf18fc24d6917520cfc819abc1.zip
input/cursor: fix heap-buffer overflow in constraint set_region
Fixes #5383, caused by an oversight in 6f0a0bd.
-rw-r--r--sway/input/cursor.c8
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
832static void handle_pointer_constraint_set_region(struct wl_listener *listener, 832static 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