From 621dd9ac0cf31453dc6e40436eae2aebd27d1517 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Fri, 19 Jul 2013 13:55:36 +0300 Subject: [PATCH] Fix the fix for bug #14901. src/keyboard.c (kbd_buffer_get_event): Use Display_Info instead of unportable 'struct x_display_info'. (DISPLAY_LIST_INFO): Delete macro: not needed, since Display_Info is a portable type. --- src/ChangeLog | 7 +++++++ src/keyboard.c | 25 ++++++++----------------- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index b0c486ab8b2..fffb0e81a0a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2013-07-19 Eli Zaretskii + + * keyboard.c (kbd_buffer_get_event): Use Display_Info instead of + unportable 'struct x_display_info'. + (DISPLAY_LIST_INFO): Delete macro: not needed, since Display_Info + is a portable type. + 2013-07-19 Paul Eggert * sysdep.c [GNU_LINUX]: Fix fd and memory leaks and similar issues. diff --git a/src/keyboard.c b/src/keyboard.c index fce466eca2f..830f70bc1f5 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -4066,28 +4066,19 @@ kbd_buffer_get_event (KBOARD **kbp, } else if (event->kind == FOCUS_OUT_EVENT) { -#if defined HAVE_X11 || defined HAVE_NS -# define DISPLAY_LIST_INFO(di) (di) -#elif defined WINDOWSNT -# define DISPLAY_LIST_INFO(di) FRAME_X_DISPLAY_INFO (di) -#endif -#ifdef DISPLAY_LIST_INFO +#ifdef HAVE_WINDOW_SYSTEM -#ifdef HAVE_NS - struct ns_display_info *di; -#else - struct x_display_info *di; -#endif + Display_Info *di; Lisp_Object frame = event->frame_or_window; bool focused = false; - for (di = x_display_list; - di && ! focused; - di = DISPLAY_LIST_INFO (di)->next) - focused = DISPLAY_LIST_INFO (di)->x_highlight_frame != 0; + for (di = x_display_list; di && ! focused; di = di->next) + focused = di->x_highlight_frame != 0; + + if (!focused) + obj = make_lispy_focus_out (frame); - if (! focused) obj = make_lispy_focus_out (frame); -#endif /* DISPLAY_LIST_INFO */ +#endif /* HAVE_WINDOW_SYSTEM */ kbd_fetch_ptr = event + 1; } -- 2.11.4.GIT