aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/keymap.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/keymap.c b/src/keymap.c
index 399292a1314..b95c04bc37f 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -371,6 +371,16 @@ get_keyelt (object)
371 if (XTYPE (object) == Lisp_Cons 371 if (XTYPE (object) == Lisp_Cons
372 && XTYPE (XCONS (object)->car) == Lisp_String) 372 && XTYPE (XCONS (object)->car) == Lisp_String)
373 object = XCONS (object)->cdr; 373 object = XCONS (object)->cdr;
374 /* Also remove the vector that caches key equivalences, if any. */
375 if (XTYPE (object) == Lisp_Cons
376 && XTYPE (XCONS (object)->car) == Lisp_Vector)
377 {
378 object = XCONS (object)->cdr;
379 /* Also remove the key's description. */
380 if (XTYPE (object) == Lisp_Cons
381 && XTYPE (XCONS (object)->car) == Lisp_String)
382 object = XCONS (object)->cdr;
383 }
374 } 384 }
375 385
376 else 386 else
@@ -1441,10 +1451,12 @@ ascii_sequence_p (seq)
1441{ 1451{
1442 Lisp_Object i; 1452 Lisp_Object i;
1443 int len = XINT (Flength (seq)); 1453 int len = XINT (Flength (seq));
1444 1454
1445 for (XFASTINT (i) = 0; XFASTINT (i) < len; XFASTINT (i)++) 1455 for (XFASTINT (i) = 0; XFASTINT (i) < len; XFASTINT (i)++)
1446 { 1456 {
1447 Lisp_Object elt = Faref (seq, i); 1457 Lisp_Object elt;
1458
1459 elt = Faref (seq, i);
1448 1460
1449 if (XTYPE (elt) != Lisp_Int 1461 if (XTYPE (elt) != Lisp_Int
1450 || (XUINT (elt) & ~CHAR_META) >= 0x80) 1462 || (XUINT (elt) & ~CHAR_META) >= 0x80)