diff options
author | nicm <nicm> | 2023-04-17 17:57:35 +0000 |
---|---|---|
committer | nicm <nicm> | 2023-04-17 17:57:35 +0000 |
commit | 280fe77eddc877f3d0a58ad3195a1e5856ac91c4 (patch) | |
tree | c8bd325cd1da583a01ff114884f1901b4f6193fd /tty-keys.c | |
parent | a2018b2c3ffd488824c599c340c2c67095f04919 (diff) |
Discard mouse sequences that have the right form but actually are
invalid (for example have column zero rather than one).
Diffstat (limited to 'tty-keys.c')
-rw-r--r-- | tty-keys.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -1008,7 +1008,8 @@ tty_keys_extended_key(struct tty *tty, const char *buf, size_t len, /* * Handle mouse key input. Returns 0 for success, -1 for failure, 1 for partial - * (probably a mouse sequence but need more data). + * (probably a mouse sequence but need more data), -2 if an invalid mouse + * sequence. */ static int tty_keys_mouse(struct tty *tty, const char *buf, size_t len, size_t *size, @@ -1069,7 +1070,7 @@ tty_keys_mouse(struct tty *tty, const char *buf, size_t len, size_t *size, if (b < MOUSE_PARAM_BTN_OFF || x < MOUSE_PARAM_POS_OFF || y < MOUSE_PARAM_POS_OFF) - return (-1); + return (-2); b -= MOUSE_PARAM_BTN_OFF; x -= MOUSE_PARAM_POS_OFF; y -= MOUSE_PARAM_POS_OFF; @@ -1111,7 +1112,7 @@ tty_keys_mouse(struct tty *tty, const char *buf, size_t len, size_t *size, /* Check and return the mouse input. */ if (x < 1 || y < 1) - return (-1); + return (-2); x--; y--; b = sgr_b; |