aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/xterm.c')
-rw-r--r--src/xterm.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 4d3b572ade9..f40deca1e88 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -3678,24 +3678,23 @@ x_find_modifier_meanings (struct x_display_info *dpyinfo)
3678/* Convert between the modifier bits X uses and the modifier bits 3678/* Convert between the modifier bits X uses and the modifier bits
3679 Emacs uses. */ 3679 Emacs uses. */
3680 3680
3681EMACS_INT 3681int
3682x_x_to_emacs_modifiers (struct x_display_info *dpyinfo, int state) 3682x_x_to_emacs_modifiers (struct x_display_info *dpyinfo, int state)
3683{ 3683{
3684 EMACS_INT mod_meta = meta_modifier; 3684 int mod_meta = meta_modifier;
3685 EMACS_INT mod_alt = alt_modifier; 3685 int mod_alt = alt_modifier;
3686 EMACS_INT mod_hyper = hyper_modifier; 3686 int mod_hyper = hyper_modifier;
3687 EMACS_INT mod_super = super_modifier; 3687 int mod_super = super_modifier;
3688 Lisp_Object tem; 3688 Lisp_Object tem;
3689 3689
3690 tem = Fget (Vx_alt_keysym, Qmodifier_value); 3690 tem = Fget (Vx_alt_keysym, Qmodifier_value);
3691 if (INTEGERP (tem)) mod_alt = XINT (tem); 3691 if (INTEGERP (tem)) mod_alt = XINT (tem) & INT_MAX;
3692 tem = Fget (Vx_meta_keysym, Qmodifier_value); 3692 tem = Fget (Vx_meta_keysym, Qmodifier_value);
3693 if (INTEGERP (tem)) mod_meta = XINT (tem); 3693 if (INTEGERP (tem)) mod_meta = XINT (tem) & INT_MAX;
3694 tem = Fget (Vx_hyper_keysym, Qmodifier_value); 3694 tem = Fget (Vx_hyper_keysym, Qmodifier_value);
3695 if (INTEGERP (tem)) mod_hyper = XINT (tem); 3695 if (INTEGERP (tem)) mod_hyper = XINT (tem) & INT_MAX;
3696 tem = Fget (Vx_super_keysym, Qmodifier_value); 3696 tem = Fget (Vx_super_keysym, Qmodifier_value);
3697 if (INTEGERP (tem)) mod_super = XINT (tem); 3697 if (INTEGERP (tem)) mod_super = XINT (tem) & INT_MAX;
3698
3699 3698
3700 return ( ((state & (ShiftMask | dpyinfo->shift_lock_mask)) ? shift_modifier : 0) 3699 return ( ((state & (ShiftMask | dpyinfo->shift_lock_mask)) ? shift_modifier : 0)
3701 | ((state & ControlMask) ? ctrl_modifier : 0) 3700 | ((state & ControlMask) ? ctrl_modifier : 0)
@@ -3708,10 +3707,10 @@ x_x_to_emacs_modifiers (struct x_display_info *dpyinfo, int state)
3708static int 3707static int
3709x_emacs_to_x_modifiers (struct x_display_info *dpyinfo, EMACS_INT state) 3708x_emacs_to_x_modifiers (struct x_display_info *dpyinfo, EMACS_INT state)
3710{ 3709{
3711 int mod_meta = meta_modifier; 3710 EMACS_INT mod_meta = meta_modifier;
3712 int mod_alt = alt_modifier; 3711 EMACS_INT mod_alt = alt_modifier;
3713 int mod_hyper = hyper_modifier; 3712 EMACS_INT mod_hyper = hyper_modifier;
3714 int mod_super = super_modifier; 3713 EMACS_INT mod_super = super_modifier;
3715 3714
3716 Lisp_Object tem; 3715 Lisp_Object tem;
3717 3716
@@ -6456,9 +6455,10 @@ handle_one_xevent (struct x_display_info *dpyinfo, XEvent *eventptr,
6456 6455
6457 /* Now non-ASCII. */ 6456 /* Now non-ASCII. */
6458 if (HASH_TABLE_P (Vx_keysym_table) 6457 if (HASH_TABLE_P (Vx_keysym_table)
6459 && (NATNUMP (c = Fgethash (make_number (keysym), 6458 && (c = Fgethash (make_number (keysym),
6460 Vx_keysym_table, 6459 Vx_keysym_table,
6461 Qnil)))) 6460 Qnil),
6461 NATNUMP (c)))
6462 { 6462 {
6463 inev.ie.kind = (SINGLE_BYTE_CHAR_P (XFASTINT (c)) 6463 inev.ie.kind = (SINGLE_BYTE_CHAR_P (XFASTINT (c))
6464 ? ASCII_KEYSTROKE_EVENT 6464 ? ASCII_KEYSTROKE_EVENT
@@ -7731,7 +7731,7 @@ x_connection_closed (Display *dpy, const char *error_message)
7731{ 7731{
7732 struct x_display_info *dpyinfo = x_display_info_for_display (dpy); 7732 struct x_display_info *dpyinfo = x_display_info_for_display (dpy);
7733 Lisp_Object frame, tail; 7733 Lisp_Object frame, tail;
7734 int idx = SPECPDL_INDEX (); 7734 ptrdiff_t idx = SPECPDL_INDEX ();
7735 7735
7736 error_msg = (char *) alloca (strlen (error_message) + 1); 7736 error_msg = (char *) alloca (strlen (error_message) + 1);
7737 strcpy (error_msg, error_message); 7737 strcpy (error_msg, error_message);