# HG changeset patch # User Stefan Monnier # Date 1055711056 0 # Node ID 1ef0c7b51ff9653002444062ef6090348b4a5ad1 # Parent 904f120f283f6517ea39da9bdfbacce81d70052c (kbd_input_ast, read_input_waiting): Don't pass uninitialized data to kbd_buffer_store_event. diff -r 904f120f283f -r 1ef0c7b51ff9 src/sysdep.c --- a/src/sysdep.c Sun Jun 15 21:00:45 2003 +0000 +++ b/src/sysdep.c Sun Jun 15 21:04:16 2003 +0000 @@ -1,5 +1,5 @@ /* Interfaces to system-dependent kernel and library entries. - Copyright (C) 1985, 86,87,88,93,94,95, 1999, 2000, 2001 + Copyright (C) 1985, 86,87,88,93,94,95,1999,2000,01,2003 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -2008,6 +2008,8 @@ if (c >= 0) { struct input_event e; + EVENT_INIT (e); + e.kind = ASCII_KEYSTROKE_EVENT; XSETINT (e.code, c); e.frame_or_window = selected_frame; @@ -2622,14 +2624,15 @@ void read_input_waiting () { - struct input_event e; int nread, i; extern int quit_char; if (read_socket_hook) { struct input_event buf[256]; - + for (i = 0; i < 256; i++) + EVENT_INIT (buf[i]); + read_alarm_should_throw = 0; if (! setjmp (read_alarm_throw)) nread = (*read_socket_hook) (0, buf, 256, 1); @@ -2649,8 +2652,10 @@ } else { + struct input_event e; char buf[3]; nread = read (fileno (stdin), buf, 1); + EVENT_INIT (e); /* Scan the chars for C-g and store them in kbd_buffer. */ e.kind = ASCII_KEYSTROKE_EVENT;