summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-02-20 09:14:00 +0800
committerPo Lu <luangruo@yahoo.com>2022-02-20 09:14:00 +0800
commit7a699e79f6e2616dbbc3acc2024f97c90caa485c (patch)
tree79d3f04ed716e84c58ffff800ba6d49d0a5e6240
parent5767e06b8e7662bc76c199b3bcb3d5d09c6d9ca2 (diff)
downloademacs-7a699e79f6e2616dbbc3acc2024f97c90caa485c.tar.gz
emacs-7a699e79f6e2616dbbc3acc2024f97c90caa485c.tar.bz2
emacs-7a699e79f6e2616dbbc3acc2024f97c90caa485c.zip
Free XI2 devices in x_delete_display instead
* src/xterm.c (x_delete_display): Free XI2 device data here instead, since it doesn't involve contacting the X server any more. (x_delete_terminal): Stop freeing XI2 device data.
-rw-r--r--src/xterm.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/xterm.c b/src/xterm.c
index e2ad0b48f58..64bee110227 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -16584,6 +16584,11 @@ x_delete_display (struct x_display_info *dpyinfo)
xfree (dpyinfo->x_dnd_atoms);
xfree (dpyinfo->color_cells);
xfree (dpyinfo);
+
+#ifdef HAVE_XINPUT2
+ if (dpyinfo->supports_xi2)
+ x_free_xi_devices (dpyinfo);
+#endif
}
#ifdef USE_X_TOOLKIT
@@ -16729,10 +16734,6 @@ x_delete_terminal (struct terminal *terminal)
if (dpyinfo->xkb_desc)
XkbFreeKeyboard (dpyinfo->xkb_desc, XkbAllComponentsMask, True);
#endif
-#ifdef HAVE_XINPUT2
- if (dpyinfo->supports_xi2)
- x_free_xi_devices (dpyinfo);
-#endif
#ifdef USE_GTK
xg_display_close (dpyinfo->display);
#else