diff options
Diffstat (limited to 'src/xterm.c')
| -rw-r--r-- | src/xterm.c | 36 |
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 | ||
| 3681 | EMACS_INT | 3681 | int |
| 3682 | x_x_to_emacs_modifiers (struct x_display_info *dpyinfo, int state) | 3682 | x_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) | |||
| 3708 | static int | 3707 | static int |
| 3709 | x_emacs_to_x_modifiers (struct x_display_info *dpyinfo, EMACS_INT state) | 3708 | x_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); |