aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Rudalics2012-08-20 11:28:39 +0200
committerMartin Rudalics2012-08-20 11:28:39 +0200
commit734fbd863cc9e3475294f800e62283ea09e6c3ba (patch)
tree6da3d477e47cd9ff1874b2158c5880c78a83dd9b /src
parentf1a959923a6ead8f3a3e0590c16fa3114d91dc27 (diff)
downloademacs-734fbd863cc9e3475294f800e62283ea09e6c3ba.tar.gz
emacs-734fbd863cc9e3475294f800e62283ea09e6c3ba.zip
In select_window always make selected window's buffer current.
* window.c (select_window): Always make selected window's buffer current.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/window.c12
2 files changed, 11 insertions, 6 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 58fa0de36b2..c6a45756ec5 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12012-08-20 Martin Rudalics <rudalics@gmx.at>
2
3 * window.c (select_window): Always make selected window's buffer
4 current.
5
12012-08-20 Dmitry Antipov <dmantipov@yandex.ru> 62012-08-20 Dmitry Antipov <dmantipov@yandex.ru>
2 7
3 Use AREF and ASET for docstrings of category tables. 8 Use AREF and ASET for docstrings of category tables.
diff --git a/src/window.c b/src/window.c
index b379eecabdd..9045721009d 100644
--- a/src/window.c
+++ b/src/window.c
@@ -477,6 +477,9 @@ select_window (Lisp_Object window, Lisp_Object norecord, int inhibit_point_swap)
477 record_buffer (w->buffer); 477 record_buffer (w->buffer);
478 } 478 }
479 479
480 /* Make the selected window's buffer current. */
481 Fset_buffer (w->buffer);
482
480 if (EQ (window, selected_window) && !inhibit_point_swap) 483 if (EQ (window, selected_window) && !inhibit_point_swap)
481 return window; 484 return window;
482 485
@@ -496,9 +499,9 @@ select_window (Lisp_Object window, Lisp_Object norecord, int inhibit_point_swap)
496 else 499 else
497 fset_selected_window (sf, window); 500 fset_selected_window (sf, window);
498 501
499 /* Store the current buffer's actual point into the 502 /* Store the old selected window's buffer's point in pointm of the old
500 old selected window. It belongs to that window, 503 selected window. It belongs to that window, and when the window is
501 and when the window is not selected, must be in the window. */ 504 not selected, must be in the window. */
502 if (!inhibit_point_swap) 505 if (!inhibit_point_swap)
503 { 506 {
504 ow = XWINDOW (selected_window); 507 ow = XWINDOW (selected_window);
@@ -509,9 +512,6 @@ select_window (Lisp_Object window, Lisp_Object norecord, int inhibit_point_swap)
509 } 512 }
510 513
511 selected_window = window; 514 selected_window = window;
512
513 Fset_buffer (w->buffer);
514
515 bset_last_selected_window (XBUFFER (w->buffer), window); 515 bset_last_selected_window (XBUFFER (w->buffer), window);
516 516
517 /* Go to the point recorded in the window. 517 /* Go to the point recorded in the window.