Fix bug 9869.
authorJan Djärv <jan.h.d@swipnet.se>
Sun, 30 Oct 2011 18:04:13 +0000 (19:04 +0100)
committerJan Djärv <jan.h.d@swipnet.se>
Sun, 30 Oct 2011 18:04:13 +0000 (19:04 +0100)
xterm.c: Include X11/Xproto.h if HAVE_GTK3.
(x_error_handler): Ignore BadMatch for X_SetInputFocus for
HAVE_GTK3 (Bug#9869).

src/ChangeLog
src/xterm.c

index ea367bd..9f8fa94 100644 (file)
@@ -1,4 +1,8 @@
-2011-10-30  Jan Djärv  <jan.h.d@swipnet.se>
+2011-10-30  Adam Sjøgren <asjo@koldfront.dk> (tiny change)
+
+       * xterm.c: Include X11/Xproto.h if HAVE_GTK3.
+       (x_error_handler): Ignore BadMatch for X_SetInputFocus for
+       HAVE_GTK3 (Bug#9869).
 
        * gtkutil.c (xg_win_to_widget, xg_event_is_for_menubar): Initialize
        type to GDK_NOTHING so valgrind does not complain (Bug#9901).
index 2275e5b..fb77faa 100644 (file)
@@ -93,6 +93,9 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #ifdef USE_GTK
 #include "gtkutil.h"
+#ifdef HAVE_GTK3
+#include <X11/Xproto.h>
+#endif
 #endif
 
 #ifdef USE_LUCID
@@ -7869,6 +7872,15 @@ static void x_error_quitter (Display *, XErrorEvent *);
 static int
 x_error_handler (Display *display, XErrorEvent *event)
 {
+#ifdef HAVE_GTK3
+  if (event->error_code == BadMatch
+      && event->request_code == X_SetInputFocus
+      && event->minor_code == 0)
+    {
+      return 0;
+    }
+#endif
+
   if (x_error_message)
     x_error_catcher (display, event);
   else