]> git.eshelyaron.com Git - emacs.git/commitdiff
(x_connection_closed): Unblock input, first thing.
authorKarl Heuer <kwzh@gnu.org>
Wed, 24 May 1995 20:37:08 +0000 (20:37 +0000)
committerKarl Heuer <kwzh@gnu.org>
Wed, 24 May 1995 20:37:08 +0000 (20:37 +0000)
Set Vdefault_minibuffer_frame to t
before deleting a frame that might have its own minibuffer.

src/xterm.c

index cf6f69877921109b2c30e8dc734bedce967d5ae1..da83bf51b89a09fa2bb37f221930bbd43d9a465b 100644 (file)
@@ -4352,6 +4352,11 @@ x_connection_closed (display, error_message)
   struct x_display_info *dpyinfo = x_display_info_for_display (display);
   Lisp_Object frame, tail;
 
+  /* Whatever we were in the middle of, we are going to throw out of it,
+     so reassure various things that have error checks about being
+     called with input blocked.  */
+  TOTALLY_UNBLOCK_INPUT;
+
   if (_Xdebug)
     abort ();
 
@@ -4375,7 +4380,12 @@ x_connection_closed (display, error_message)
   FOR_EACH_FRAME (tail, frame)
     if (FRAME_X_P (XFRAME (frame))
        && FRAME_X_DISPLAY_INFO (XFRAME (frame)) == dpyinfo)
-      Fdelete_frame (frame, Qt);
+      {
+       /* Set this to t so that Fdelete_frame won't get confused
+          trying to find a replacement.  */
+       FRAME_KBOARD (XFRAME (frame))->Vdefault_minibuffer_frame = Qt;
+       Fdelete_frame (frame, Qt);
+      }
 
   x_delete_display (dpyinfo);