From: Chong Yidong Date: Sat, 13 Dec 2008 22:09:09 +0000 (+0000) Subject: (x_delete_display): Move xim_close_dpy call to x_delete_terminal. X-Git-Tag: emacs-pretest-23.0.90~1097 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=b3b6105f0dc52e1cec304876202e20fcc5149d04;p=emacs.git (x_delete_display): Move xim_close_dpy call to x_delete_terminal. (x_delete_terminal): Call xim_close_dpy. --- diff --git a/src/xterm.c b/src/xterm.c index ffc03bc10e9..c47bd5026f7 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -10523,10 +10523,6 @@ x_delete_display (dpyinfo) #ifndef AIX /* On AIX, XCloseDisplay calls this. */ XrmDestroyDatabase (dpyinfo->xrdb); #endif -#endif -#ifdef HAVE_X_I18N - if (dpyinfo->xim) - xim_close_dpy (dpyinfo); #endif xfree (dpyinfo->x_id_name); @@ -10635,6 +10631,13 @@ x_delete_terminal (struct terminal *terminal) return; BLOCK_INPUT; +#ifdef HAVE_X_I18N + /* We must close our connection to the XIM server before closing the + X display. */ + if (dpyinfo->xim) + xim_close_dpy (dpyinfo); +#endif + /* If called from x_connection_closed, the display may already be closed and dpyinfo->display was set to 0 to indicate that. */ if (dpyinfo->display)