[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/window.c
From: |
Richard M. Stallman |
Subject: |
[Emacs-diffs] Changes to emacs/src/window.c |
Date: |
Sat, 15 Jun 2002 10:20:52 -0400 |
Index: emacs/src/window.c
diff -c emacs/src/window.c:1.417 emacs/src/window.c:1.418
*** emacs/src/window.c:1.417 Wed Jun 5 13:01:31 2002
--- emacs/src/window.c Sat Jun 15 10:20:52 2002
***************
*** 4941,4946 ****
--- 4941,4947 ----
Lisp_Object new_current_buffer;
Lisp_Object frame;
FRAME_PTR f;
+ int old_point = -1;
while (!WINDOW_CONFIGURATIONP (configuration))
wrong_type_argument (Qwindow_configuration_p, configuration);
***************
*** 4951,4956 ****
--- 4952,4959 ----
new_current_buffer = data->current_buffer;
if (NILP (XBUFFER (new_current_buffer)->name))
new_current_buffer = Qnil;
+ else
+ old_point = BUF_PT (XBUFFER (new_current_buffer));
frame = XWINDOW (SAVED_WINDOW_N (saved_windows, 0)->window)->frame;
f = XFRAME (frame);
***************
*** 5138,5149 ****
FRAME_ROOT_WINDOW (f) = data->root_window;
/* Prevent "swapping out point" in the old selected window
using the buffer that has been restored into it.
! That swapping out has already been done,
! near the beginning of this function. */
selected_window = Qnil;
if (EQ (XWINDOW (data->current_window)->buffer, new_current_buffer))
set_marker_restricted (XWINDOW (data->current_window)->pointm,
! make_number (BUF_PT (XBUFFER (XWINDOW
(data->current_window)->buffer))),
XWINDOW (data->current_window)->buffer);
Fselect_window (data->current_window);
--- 5141,5153 ----
FRAME_ROOT_WINDOW (f) = data->root_window;
/* Prevent "swapping out point" in the old selected window
using the buffer that has been restored into it.
! Use the point value from the beginning of this function
! since unshow_buffer (called from delete_all_subwindows)
! could have altered it. */
selected_window = Qnil;
if (EQ (XWINDOW (data->current_window)->buffer, new_current_buffer))
set_marker_restricted (XWINDOW (data->current_window)->pointm,
! old_point,
XWINDOW (data->current_window)->buffer);
Fselect_window (data->current_window);