1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-06 05:52:32 -08:00

Fix recent change in window.c

* src/window.c (scroll_command): Fix minor inefficiency in
last change: don't call Fset_buffer if the buffer is already set to be
what we want.  (Bug#31988)
This commit is contained in:
Eli Zaretskii 2018-07-07 10:45:45 +03:00
parent 130310893a
commit c73cf3548e

View file

@ -5652,12 +5652,17 @@ scroll_command (Lisp_Object window, Lisp_Object n, int direction)
w = XWINDOW (window);
other_window = ! EQ (window, selected_window);
/* If given window's buffer isn't current, make it current for
the moment. But don't screw up if window_scroll gets an error. */
/* If given window's buffer isn't current, make it current for the
moment. If the window's buffer is the same, but it is not the
selected window, we need to save-excursion to avoid affecting
point in the selected window (which would cause the selected
window to scroll). Don't screw up if window_scroll gets an
error. */
if (other_window || XBUFFER (w->contents) != current_buffer)
{
record_unwind_protect_excursion ();
Fset_buffer (w->contents);
if (XBUFFER (w->contents) != current_buffer)
Fset_buffer (w->contents);
}
if (other_window)