changeset 15412:7824cf167226

(read_char): Use unsigned to compare against the size of Vkeyboard_translate_table. Check size for char-table too.
author Richard M. Stallman <rms@gnu.org>
date Wed, 12 Jun 1996 15:20:37 +0000
parents 9691904c57a5
children 733b5def9d51
files src/keyboard.c
diffstat 1 files changed, 4 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/keyboard.c	Wed Jun 12 15:00:48 1996 +0000
+++ b/src/keyboard.c	Wed Jun 12 15:20:37 1996 +0000
@@ -2096,11 +2096,12 @@
 	return c;
 
       if (STRINGP (Vkeyboard_translate_table)
-	  && XSTRING (Vkeyboard_translate_table)->size > XFASTINT (c))
+	  && XSTRING (Vkeyboard_translate_table)->size > (unsigned) XFASTINT (c))
 	XSETINT (c, XSTRING (Vkeyboard_translate_table)->data[XFASTINT (c)]);
       else if ((VECTORP (Vkeyboard_translate_table)
-		&& XVECTOR (Vkeyboard_translate_table)->size > XFASTINT (c))
-	       || CHAR_TABLE_P (Vkeyboard_translate_table))
+		&& XVECTOR (Vkeyboard_translate_table)->size > (unsigned) XFASTINT (c))
+	       || (CHAR_TABLE_P (Vkeyboard_translate_table)
+		   && CHAR_TABLE_ORDINARY_SLOTS > (unsigned) XFASTINT (c)))
 	{
 	  Lisp_Object d;
 	  d = Faref (Vkeyboard_translate_table, c);