(access_keymap): Fix last change to not consider
authorGerd Moellmann <gerd@gnu.org>
Wed, 22 Aug 2001 08:29:20 +0000 (08:29 +0000)
committerGerd Moellmann <gerd@gnu.org>
Wed, 22 Aug 2001 08:29:20 +0000 (08:29 +0000)
IDX when it has modifiers.

src/keymap.c

index c4054f3..e503172 100644 (file)
@@ -537,7 +537,9 @@ access_keymap (map, idx, t_ok, noinherit, autoload)
                return get_keyelt (val, autoload);
              }
            else if (INTEGERP (idx)
+                    && (XINT (idx) & CHAR_MODIFIER_MASK) == 0
                     && INTEGERP (key)
+                    && (XINT (key) & CHAR_MODIFIER_MASK) == 0
                     && !SINGLE_BYTE_CHAR_P (XINT (idx))
                     && !SINGLE_BYTE_CHAR_P (XINT (key))
                     && CHAR_VALID_P (XINT (key), 1)
@@ -571,9 +573,7 @@ access_keymap (map, idx, t_ok, noinherit, autoload)
               are not included in a char-table.
               All character codes without modifiers are included.  */
            if (NATNUMP (idx)
-               && ! (XFASTINT (idx)
-                     & (CHAR_ALT | CHAR_SUPER | CHAR_HYPER
-                        | CHAR_SHIFT | CHAR_CTL | CHAR_META)))
+               && (XFASTINT (idx) & CHAR_MODIFIER_MASK) == 0)
              {
                val = Faref (binding, idx);
                if (noprefix && KEYMAPP (val))