summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-09-08 13:20:33 +0800
committerPo Lu <luangruo@yahoo.com>2022-09-08 13:20:33 +0800
commit56f3cdef6bdd5732abd774c3baf33563459b534c (patch)
treefda058d827a79c0345c6017a0f3e3bb31452eabd
parentcb036a79e2261569d900d6b78f283c441afd5b04 (diff)
downloademacs-56f3cdef6bdd5732abd774c3baf33563459b534c.tar.gz
emacs-56f3cdef6bdd5732abd774c3baf33563459b534c.tar.bz2
emacs-56f3cdef6bdd5732abd774c3baf33563459b534c.zip
Avoid selecting for excessive output configuration events
* src/xterm.c (x_term_init): Only select for RROutputPropertyNotify if GTK is in use. Emacs doesn't need it itself, and output property changes will otherwise lead to 2 second freezes over connections with high network latency.
-rw-r--r--src/xterm.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 6f76622bfe2..aa3fb0fc124 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -28742,10 +28742,13 @@ x_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name)
(RRScreenChangeNotifyMask
| RRCrtcChangeNotifyMask
| RROutputChangeNotifyMask
- /* Emacs doesn't actually need this, but GTK
- selects for it when the display is
+#ifdef USE_GTK
+ /* Emacs doesn't actually need this, but
+ GTK selects for it when the display is
initialized. */
- | RROutputPropertyNotifyMask));
+ | RROutputPropertyNotifyMask
+#endif
+ ));
dpyinfo->last_monitor_attributes_list
= Fx_display_monitor_attributes_list (term);