summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xrdp/xrdp_wm.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/xrdp/xrdp_wm.c b/xrdp/xrdp_wm.c
index c71a5ea3..9c6cdb2f 100644
--- a/xrdp/xrdp_wm.c
+++ b/xrdp/xrdp_wm.c
@@ -1132,7 +1132,7 @@ xrdp_wm_key(struct xrdp_wm* self, int device_flags, int scan_code)
xrdp_wm_clear_popup(self);
return 0;
}
- if (device_flags & 0x8000) /* key up */
+ if (device_flags & KBD_FLAG_UP) /* 0x8000 */
{
self->keys[scan_code] = 0;
msg = WM_KEYUP;
@@ -1197,8 +1197,9 @@ xrdp_wm_key(struct xrdp_wm* self, int device_flags, int scan_code)
if (key_down != 0)
{
self->mod->mod_event(self->mod, msg, key_down->param1,
- key_down->param2, key_down->scan_code,
- key_down->param4);
+ key_down->param2 | KBD_FLAG_UP,
+ key_down->scan_code,
+ key_down->param4 | KBD_FLAG_UP);
list_remove_item(self->key_down_list, key_down_index);
}
}