]> git.eshelyaron.com Git - emacs.git/commitdiff
(choose_minibuf_frame_1): New function.
authorRichard M. Stallman <rms@gnu.org>
Tue, 22 Jul 1997 03:10:25 +0000 (03:10 +0000)
committerRichard M. Stallman <rms@gnu.org>
Tue, 22 Jul 1997 03:10:25 +0000 (03:10 +0000)
(read_minibuf): Make an unwind protect to run that.
(read_minibuf_unwind): Don't call choose_minibuf_frame here.

src/minibuf.c

index e7888c0d7b891f55f2c51a5f11919075937abe3e..a9ff9b84e70fe40ce95c7a75bda3c31578d5e40f 100644 (file)
@@ -148,6 +148,14 @@ choose_minibuf_frame ()
   }
 }
 
+Lisp_Object
+choose_minibuf_frame_1 (ignore)
+     Lisp_Object ignore;
+{
+  choose_minibuf_frame ();
+  return Qnil;
+}
+
 DEFUN ("set-minibuffer-window", Fset_minibuffer_window,
        Sset_minibuffer_window, 1, 1, 0,
   "Specify which minibuffer window to use for the minibuffer.\n\
@@ -234,6 +242,8 @@ read_minibuf (map, initial, prompt, backup_n, expflag,
 
   choose_minibuf_frame ();
 
+  record_unwind_protect (choose_minibuf_frame_1, Qnil);
+
   record_unwind_protect (Fset_window_configuration,
                         Fcurrent_window_configuration (Qnil));
 
@@ -539,10 +549,6 @@ read_minibuf_unwind (data)
     unbind_to (count, Qnil);
   }
 
-  /* Make the minibuffer follow the selected frame
-     (in case we are exiting a recursive minibuffer).  */
-  choose_minibuf_frame ();
-
   /* Make sure minibuffer window is erased, not ignored.  */
   windows_or_buffers_changed++;
   XSETFASTINT (XWINDOW (window)->last_modified, 0);