From: Daniel Colascione Date: Mon, 24 Feb 2014 14:27:37 +0000 (-0800) Subject: Fix event race X-Git-Url: http://git.hcoop.net/bpt/emacs.git/commitdiff_plain/7c56ecf5f550703a28831c8ac8de940cc7d88599 Fix event race --- 7c56ecf5f550703a28831c8ac8de940cc7d88599 diff --cc src/ChangeLog index 86605b9776,4bb4719710..ed71ae9452 --- a/src/ChangeLog +++ b/src/ChangeLog @@@ -1,31 -1,3 +1,35 @@@ ++2014-02-24 Daniel Colascione ++ ++ * keyboard.c (read_char): Close race that resulted in lost events. ++ +2014-02-22 Glenn Morris + + * frame.c (frame-alpha-lower-limit, frame-resize-pixelwise): + * window.c (window-resize-pixelwise): Doc fixes. + + * process.c (Finternal_default_process_filter) + (Finternal_default_process_sentinel): Doc tweaks. + +2014-02-21 Glenn Morris + + * process.c (Fprocess_buffer, Faccept_process_output) + (Finternal_default_process_filter, Finternal_default_process_sentinel): + Doc fixes. + +2014-02-21 Martin Rudalics + + * window.c (Fwindow_scroll_bar_width): New function. + +2014-02-21 Paul Eggert + + Pacify GCC when configuring with --enable-gcc-warnings. + * xdisp.c (move_it_in_display_line_to) [lint]: + Initialize recently-added local. + +2014-02-21 Daniel Colascione + + * dbusbind.c: Rename dbus-init-bus to dbus-init-bus-1. + 2014-02-20 Eli Zaretskii * xdisp.c (init_iterator): Don't dereference a bogus face diff --cc src/keyboard.c index 9dcb58ae66,9dcb58ae66..038ce6ea60 --- a/src/keyboard.c +++ b/src/keyboard.c @@@ -2891,8 -2891,8 +2891,12 @@@ read_char (int commandflag, Lisp_Objec { c = read_decoded_event_from_main_queue (end_time, local_getcjmp, prev_event, used_mouse_menu); -- if (end_time && timespec_cmp (*end_time, current_timespec ()) <= 0) -- goto exit; ++ if (NILP(c) && end_time && ++ timespec_cmp (*end_time, current_timespec ()) <= 0) ++ { ++ goto exit; ++ } ++ if (EQ (c, make_number (-2))) { /* This is going to exit from read_char