input: pointer-leave: don't reset mouse properties with memset()

Using memset() also clears the mouse bindings. This is both incorrect,
and leaked memory.
This commit is contained in:
Daniel Eklöf 2020-08-10 18:59:03 +02:00
parent 49eea3893e
commit 375dcf0810
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -1211,7 +1211,12 @@ wl_pointer_leave(void *data, struct wl_pointer *wl_pointer,
}
/* Reset mouse state */
memset(&seat->mouse, 0, sizeof(seat->mouse));
seat->mouse.x = seat->mouse.y = 0;
seat->mouse.col = seat->mouse.row = 0;
seat->mouse.button = seat->mouse.last_button = seat->mouse.count = 0;
memset(&seat->mouse.last_time, 0, sizeof(seat->mouse.last_time));
seat->mouse.axis_aggregated = 0.0;
seat->mouse.have_discrete = false;
seat->mouse_focus = NULL;
if (old_moused == NULL) {