aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2013-07-19 13:55:36 +0300
committerEli Zaretskii2013-07-19 13:55:36 +0300
commit621dd9ac0cf31453dc6e40436eae2aebd27d1517 (patch)
treef019f8bcc2b347307fa60c82d31349ea657aae73
parentac446ed806624ee66ccec019e631b9de58b14537 (diff)
downloademacs-621dd9ac0cf31453dc6e40436eae2aebd27d1517.tar.gz
emacs-621dd9ac0cf31453dc6e40436eae2aebd27d1517.zip
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.
-rw-r--r--src/ChangeLog7
-rw-r--r--src/keyboard.c25
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 @@
12013-07-19 Eli Zaretskii <eliz@gnu.org>
2
3 * keyboard.c (kbd_buffer_get_event): Use Display_Info instead of
4 unportable 'struct x_display_info'.
5 (DISPLAY_LIST_INFO): Delete macro: not needed, since Display_Info
6 is a portable type.
7
12013-07-19 Paul Eggert <eggert@cs.ucla.edu> 82013-07-19 Paul Eggert <eggert@cs.ucla.edu>
2 9
3 * sysdep.c [GNU_LINUX]: Fix fd and memory leaks and similar issues. 10 * 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,
4066 } 4066 }
4067 else if (event->kind == FOCUS_OUT_EVENT) 4067 else if (event->kind == FOCUS_OUT_EVENT)
4068 { 4068 {
4069#if defined HAVE_X11 || defined HAVE_NS 4069#ifdef HAVE_WINDOW_SYSTEM
4070# define DISPLAY_LIST_INFO(di) (di)
4071#elif defined WINDOWSNT
4072# define DISPLAY_LIST_INFO(di) FRAME_X_DISPLAY_INFO (di)
4073#endif
4074#ifdef DISPLAY_LIST_INFO
4075 4070
4076#ifdef HAVE_NS 4071 Display_Info *di;
4077 struct ns_display_info *di;
4078#else
4079 struct x_display_info *di;
4080#endif
4081 Lisp_Object frame = event->frame_or_window; 4072 Lisp_Object frame = event->frame_or_window;
4082 bool focused = false; 4073 bool focused = false;
4083 4074
4084 for (di = x_display_list; 4075 for (di = x_display_list; di && ! focused; di = di->next)
4085 di && ! focused; 4076 focused = di->x_highlight_frame != 0;
4086 di = DISPLAY_LIST_INFO (di)->next) 4077
4087 focused = DISPLAY_LIST_INFO (di)->x_highlight_frame != 0; 4078 if (!focused)
4079 obj = make_lispy_focus_out (frame);
4088 4080
4089 if (! focused) obj = make_lispy_focus_out (frame); 4081#endif /* HAVE_WINDOW_SYSTEM */
4090#endif /* DISPLAY_LIST_INFO */
4091 4082
4092 kbd_fetch_ptr = event + 1; 4083 kbd_fetch_ptr = event + 1;
4093 } 4084 }