diff --git a/vkm/vkm_linux_evdev.c b/vkm/vkm_linux_evdev.c index a3a4cdc..4b517e0 100644 --- a/vkm/vkm_linux_evdev.c +++ b/vkm/vkm_linux_evdev.c @@ -51,7 +51,7 @@ vkm_result vkm_init(vkm_context **ctx) return VKM_ERROR_INVALID_PARAM; } - *ctx = calloc(1, sizeof(*ctx)); + *ctx = calloc(1, sizeof(**ctx)); if (*ctx == NULL) { return VKM_ERROR_OUT_OF_MEMORY; } @@ -69,6 +69,7 @@ vkm_result vkm_init(vkm_context **ctx) (*ctx)->name = name; // Set defaults for the flags + return VKM_SUCCESS; error: if (name) { @@ -268,7 +269,7 @@ vkm_result vkm_mouse_move(vkm_context *ctx, int dx, int dy) } if (dy) { - rc = libevdev_uinput_write_event(ctx->uidev, EV_REL, REL_X, dx); + rc = libevdev_uinput_write_event(ctx->uidev, EV_REL, REL_Y, dy); if (rc != 0) { return VKM_ERROR_EVENT; } @@ -302,6 +303,7 @@ vkm_result vkm_mouse_click(vkm_context *ctx, vkm_mouse_button button, vkm_button if (existing == state) { return VKM_ERROR_NO_CHANGE; } + _vkm_set_mouse_button_state(&(ctx->mouse_buttons), button, state); rc = libevdev_uinput_write_event(ctx->uidev, EV_KEY, mouse_button_map[button], button_value_map[state]);