From f7706646eb22dbf8819b0071e94fdeb2ce53dbea Mon Sep 17 00:00:00 2001 From: Dave Love Date: Mon, 4 Nov 2002 14:29:04 +0000 Subject: [PATCH] (XTread_socket): Check Lisp types for Vx_keysym_table and fix C types. --- src/xterm.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/xterm.c b/src/xterm.c index 1b16ba85055..eef2eb15976 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -10758,14 +10758,15 @@ XTread_socket (sd, bufp, numchars, expected) numchars--; } /* Now non-ASCII. */ - else if (! EQ ((c = Fgethash (make_number (keysym), - Vx_keysym_table, Qnil)), - Qnil)) + else if (HASH_TABLE_P (Vx_keysym_table) + && (NATNUMP (c = Fgethash (make_number (keysym), + Vx_keysym_table, + Qnil)))) { - bufp->kind = (SINGLE_BYTE_CHAR_P (c) + bufp->kind = (SINGLE_BYTE_CHAR_P (XFASTINT (c)) ? ASCII_KEYSTROKE_EVENT : MULTIBYTE_CHAR_KEYSTROKE_EVENT); - bufp->code = c; + bufp->code = XFASTINT (c); XSETFRAME (bufp->frame_or_window, f); bufp->arg = Qnil; bufp->modifiers -- 2.39.2