changeset 1441:929409595312

* keymap.c (store_in_keymap): Don't forget to QUIT in the keymap-scanning loop. Don't treat vectors as binding tables if they're the wrong length. * keymap.c (store_in_keymap): Don't forget to QUIT in the keymap-scanning loop. Don't treat vectors as binding tables if they're the wrong length.
author Jim Blandy <jimb@redhat.com>
date Mon, 19 Oct 1992 18:41:06 +0000
parents 8c27b145955a
children 89ac471c745c
files src/keymap.c
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/keymap.c	Mon Oct 19 18:39:37 1992 +0000
+++ b/src/keymap.c	Mon Oct 19 18:41:06 1992 +0000
@@ -355,6 +355,8 @@
 	switch (XTYPE (elt))
 	  {
 	  case Lisp_Vector:
+	    if (XVECTOR (elt)->size != DENSE_TABLE_SIZE)
+	      break;
 	    if (XTYPE (idx) == Lisp_Int)
 	      {
 		XVECTOR (elt)->contents[XFASTINT (idx)] = def;
@@ -380,6 +382,8 @@
 	      goto keymap_end;
 	    break;
 	  }
+
+	QUIT;
       }
 
   keymap_end: