I don't think the behavior in my above example is consistent
and predictable: it doesn't happen if the two windows displaying the buffer
are on different frames, it doesn't happen if current-buffer is displayed
in one or zero windows on the frame, ...
I am not sure what "it" refers to, there. What's supposed to be
generally true and consistent is that point in the current buffer
isn't saved and restored by save-window-excursion. Have you found
a case where that is not so?
+ /* The code further down is careful to preserve point in current
+ buffer (if current-buffer is equal to new_current_buffer), but
+ that ends up moving the window's point if the selected-window
+ before and after both display current-buffer but aren't the
+ same window.
I don't think that comment is true. Since that window was selected,
and becomes selected again, it's point value is not used.
Temporarily, during the body of the save-window-excursion, it is not
selected and its point value is used; but when the
save-window-excursion exits, once again it is selected, so its point
value once again does not matter. So it can't be correct to day
that its point value gets "moved".
I am not really sure what change your patch is intended to make.
_______________________________________________
Emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug