]> git.eshelyaron.com Git - emacs.git/commitdiff
* xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
authorJan Djärv <jan.h.d@swipnet.se>
Tue, 24 Aug 2004 17:22:33 +0000 (17:22 +0000)
committerJan Djärv <jan.h.d@swipnet.se>
Tue, 24 Aug 2004 17:22:33 +0000 (17:22 +0000)
src/ChangeLog
src/xterm.c

index 35731460a7045c2f07234cfae960d2e207d28773..d49514b2fc09b0bcfdcc4495057e4fd3c2048533 100644 (file)
@@ -1,5 +1,7 @@
 2004-08-24  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
 
+       * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
+
        * xfns.c (x_window_to_frame, x_any_window_to_frame)
        (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
        (x_top_window_to_frame): Return 0 if wdesc is None.
index 5e6a236c4be5553c87aa836f6f3b9a304650adaf..c1bfd11985e743649068441de2954679d5da2546 100644 (file)
@@ -7604,11 +7604,13 @@ static Lisp_Object
 x_catch_errors_unwind (old_val)
      Lisp_Object old_val;
 {
-  Lisp_Object first;
+  Lisp_Object first = XCAR (old_val);
+  Display *dpy = XSAVE_VALUE (first)->pointer;
 
-  first = XCAR (old_val);
-
-  XSync (XSAVE_VALUE (first)->pointer, False);
+  /* The display may have been closed before this function is called.
+     Check if it is still open before calling XSync.  */
+  if (x_display_info_for_display (dpy) != 0)
+    XSync (dpy, False);
 
   x_error_message_string = XCDR (old_val);
   return Qnil;