aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1994-02-21 21:50:02 +0000
committerRichard M. Stallman1994-02-21 21:50:02 +0000
commitc6ec9f6e897f881a616367f3fbf6c4692dd6b9e1 (patch)
treebb56ccb92620378839b38f7686bb2cdacb70c8b1 /src
parent0da7cff11d342e3cfa88df4a03d56042accba476 (diff)
downloademacs-c6ec9f6e897f881a616367f3fbf6c4692dd6b9e1.tar.gz
emacs-c6ec9f6e897f881a616367f3fbf6c4692dd6b9e1.zip
(get_keyelt): Cached equiv-key data is now a sublist.
Diffstat (limited to 'src')
-rw-r--r--src/keymap.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/keymap.c b/src/keymap.c
index b95c04bc37f..dec406d2303 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -371,14 +371,13 @@ 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. */ 374 /* Also remove the sublist that caches key equivalences, if any. */
375 if (XTYPE (object) == Lisp_Cons 375 if (CONSP (object)
376 && XTYPE (XCONS (object)->car) == Lisp_Vector) 376 && CONSP (XCONS (object)->car))
377 { 377 {
378 object = XCONS (object)->cdr; 378 Lisp_Object carcar;
379 /* Also remove the key's description. */ 379 carcar = XCONS (XCONS (object)->car)->car;
380 if (XTYPE (object) == Lisp_Cons 380 if (NILP (carcar) || VECTORP (carcar))
381 && XTYPE (XCONS (object)->car) == Lisp_String)
382 object = XCONS (object)->cdr; 381 object = XCONS (object)->cdr;
383 } 382 }
384 } 383 }