summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1996-04-12 06:07:06 +0000
committerRichard M. Stallman <rms@gnu.org>1996-04-12 06:07:06 +0000
commit87130b9463e97ef0b08a32909e1b6f29964473eb (patch)
treeedf787c7934fe49c6948095ac75319b6a7e0c9da
parent861c34b4657f77f20c85880165cae7fb35fde6a8 (diff)
downloademacs-87130b9463e97ef0b08a32909e1b6f29964473eb.tar.gz
(make_frame_without_minibuffer): Don't change the
mini_window's buffer if it already displays a minibuffer.
-rw-r--r--src/frame.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/frame.c b/src/frame.c
index 846c142248e..d9656c37fad 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -404,12 +404,16 @@ make_frame_without_minibuffer (mini_window, kb, display)
}
mini_window = XFRAME (kb->Vdefault_minibuffer_frame)->minibuffer_window;
}
- /* Install the chosen minibuffer window, with proper buffer. */
+
f->minibuffer_window = mini_window;
- Fset_window_buffer (mini_window,
- (NILP (Vminibuffer_list)
- ? get_minibuffer (0)
- : Fcar (Vminibuffer_list)));
+
+ /* Make the chosen minibuffer window display the proper minibuffer,
+ unless it is already showing a minibuffer. */
+ if (NILP (Fmemq (XWINDOW (mini_window)->buffer, Vminibuffer_list)))
+ Fset_window_buffer (mini_window,
+ (NILP (Vminibuffer_list)
+ ? get_minibuffer (0)
+ : Fcar (Vminibuffer_list)));
return f;
}