mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-30 09:00:31 -08:00
(access_keymap, store_in_keymap): Don't look in a char-table
for a character that has modifier bits.
This commit is contained in:
parent
36febf9e9b
commit
6418ea1619
1 changed files with 14 additions and 2 deletions
16
src/keymap.c
16
src/keymap.c
|
|
@ -484,7 +484,13 @@ access_keymap (map, idx, t_ok, noinherit)
|
|||
}
|
||||
else if (CHAR_TABLE_P (binding))
|
||||
{
|
||||
if (NATNUMP (idx))
|
||||
/* Character codes with modifiers
|
||||
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)))
|
||||
{
|
||||
val = Faref (binding, idx);
|
||||
if (noprefix && CONSP (val) && EQ (XCONS (val)->car, Qkeymap))
|
||||
|
|
@ -629,7 +635,13 @@ store_in_keymap (keymap, idx, def)
|
|||
}
|
||||
else if (CHAR_TABLE_P (elt))
|
||||
{
|
||||
if (NATNUMP (idx))
|
||||
/* Character codes with modifiers
|
||||
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)))
|
||||
{
|
||||
Faset (elt, idx, def);
|
||||
return def;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue