changeset 6021:de651e959736

(get_keyelt): Cached equiv-key data is now a sublist.
author Richard M. Stallman <rms@gnu.org>
date Mon, 21 Feb 1994 21:50:02 +0000
parents f6fd4af42002
children 713d4d840a11
files src/keymap.c
diffstat 1 files changed, 6 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/src/keymap.c	Mon Feb 21 21:41:01 1994 +0000
+++ b/src/keymap.c	Mon Feb 21 21:50:02 1994 +0000
@@ -371,14 +371,13 @@
 	  if (XTYPE (object) == Lisp_Cons
 	      && XTYPE (XCONS (object)->car) == Lisp_String)
 	    object = XCONS (object)->cdr;
-	  /* Also remove the vector that caches key equivalences, if any.  */
-	  if (XTYPE (object) == Lisp_Cons
-	      && XTYPE (XCONS (object)->car) == Lisp_Vector)
+	  /* Also remove the sublist that caches key equivalences, if any.  */
+	  if (CONSP (object)
+	      && CONSP (XCONS (object)->car))
 	    {
-	      object = XCONS (object)->cdr;
-	      /* Also remove the key's description.  */
-	      if (XTYPE (object) == Lisp_Cons
-		  && XTYPE (XCONS (object)->car) == Lisp_String)
+	      Lisp_Object carcar;
+	      carcar = XCONS (XCONS (object)->car)->car;
+	      if (NILP (carcar) || VECTORP (carcar))
 		object = XCONS (object)->cdr;
 	    }
 	}