summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1995-03-14 18:39:58 +0000
committerRichard M. Stallman <rms@gnu.org>1995-03-14 18:39:58 +0000
commitc63dc4a2d8ee6f00df69bd84088cdaffb3308fb9 (patch)
tree3421aa4226f191e9e9a6deae6c9038582e81d975 /src
parent3b9f7964e9dae2b2c6705811cef66a1baca215f4 (diff)
downloademacs-c63dc4a2d8ee6f00df69bd84088cdaffb3308fb9.tar.gz
(Fdisplay_buffer): Fix prev change--return selected window.
Diffstat (limited to 'src')
-rw-r--r--src/window.c20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/window.c b/src/window.c
index f1f50813054..ec561e55223 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1888,23 +1888,35 @@ Returns the window displaying BUFFER.")
{
tem = Fmember (XBUFFER (buffer)->name, Vsame_window_buffer_names);
if (!NILP (tem))
- return Fswitch_to_buffer (buffer, Qnil);
+ {
+ Fswitch_to_buffer (buffer, Qnil);
+ return selected_window;
+ }
tem = Fassoc (XBUFFER (buffer)->name, Vsame_window_buffer_names);
if (!NILP (tem))
- return Fswitch_to_buffer (buffer, Qnil);
+ {
+ Fswitch_to_buffer (buffer, Qnil);
+ return selected_window;
+ }
for (tem = Vsame_window_regexps; CONSP (tem); tem = XCONS (tem)->cdr)
{
Lisp_Object car = XCONS (tem)->car;
if (STRINGP (car)
&& fast_string_match (car, XBUFFER (buffer)->name) >= 0)
- return Fswitch_to_buffer (buffer, Qnil);
+ {
+ Fswitch_to_buffer (buffer, Qnil);
+ return selected_window;
+ }
else if (CONSP (car)
&& STRINGP (XCONS (car)->car)
&& fast_string_match (XCONS (car)->car,
XBUFFER (buffer)->name) >= 0)
- return Fswitch_to_buffer (buffer, Qnil);
+ {
+ Fswitch_to_buffer (buffer, Qnil);
+ return selected_window;
+ }
}
}