]> git.eshelyaron.com Git - emacs.git/commitdiff
Improve test for when xg_select should just invoke select (bug#9754).
authorKen Brown <kbrown@cornell.edu>
Sat, 19 May 2012 21:46:43 +0000 (17:46 -0400)
committerKen Brown <kbrown@cornell.edu>
Sat, 19 May 2012 21:46:43 +0000 (17:46 -0400)
* src/xfns.c (x_in_use): Remove `static' qualifier.
* src/xterm.h (x_in_use): Declare.
* src/xgselect.c: Include xterm.h.
(xg_select): Test `x_in_use' instead of `inhibit_window_system'
and `display_arg'.

src/ChangeLog
src/xfns.c
src/xgselect.c
src/xterm.h

index 0f1914b6e46f56bd8e0941454a5db9d6ed82033b..de07e87e7b5a90db9cc84965dd1171f868f4d4aa 100644 (file)
@@ -1,3 +1,11 @@
+2012-05-19  Ken Brown  <kbrown@cornell.edu>
+
+       * xfns.c (x_in_use): Remove `static' qualifier.
+       * xterm.h (x_in_use): Declare.
+       * xgselect.c: Include xterm.h.
+       (xg_select): Test `x_in_use' instead of `inhibit_window_system'
+       and `display_arg' (bug#9754).
+
 2012-05-19  Paul Eggert  <eggert@cs.ucla.edu>
 
        * s/ms-w32.h (HAVE_GETDOMAINNAME): Remove; not needed.
index 510a66d634922660e911e07d8ef441726c68dbb1..717378f1cd10a61cff9dff694fb1a8d6c8e1a607 100644 (file)
@@ -136,7 +136,7 @@ char *gray_bitmap_bits = gray_bits;
 
 /* Nonzero if using X.  */
 
-static int x_in_use;
+int x_in_use;
 
 static Lisp_Object Qnone;
 static Lisp_Object Qsuppress_icon;
index 8b5ee68e55b8ee043b5f33d7fc7d4bc08107a410..69ad93b3127bc32deeb6d0927d0054ded752249a 100644 (file)
@@ -27,6 +27,7 @@ along with GNU Emacs.  If not, see <http§://www.gnu.org/licenses/>.  */
 #include <glib.h>
 #include <errno.h>
 #include <setjmp.h>
+#include "xterm.h"
 
 static GPollFD *gfds;
 static ptrdiff_t gfds_size;
@@ -43,7 +44,7 @@ xg_select (int max_fds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds,
   int n_gfds = 0, our_tmo = 0, retval = 0, our_fds = 0;
   int i, nfds, fds_lim, tmo_in_millisec;
 
-  if (inhibit_window_system || !display_arg)
+  if (!x_in_use)
     return select (max_fds, rfds, wfds, efds, timeout);
 
   if (rfds) memcpy (&all_rfds, rfds, sizeof (all_rfds));
index 86daa7bd27e61a7864614e5c6e0117f85cb4bb3a..89eb493a43c8c130e0f1ee8f9bfe55f396fd8cae 100644 (file)
@@ -1038,6 +1038,7 @@ extern void x_clipboard_manager_save_all (void);
 
 extern struct x_display_info * check_x_display_info (Lisp_Object);
 extern Lisp_Object x_get_focus_frame (struct frame *);
+extern int x_in_use;
 
 #ifdef USE_GTK
 extern int xg_set_icon (struct frame *, Lisp_Object);