diff options
| author | Martin Rudalics <rudalics@gmx.at> | 2026-05-22 19:33:57 +0200 |
|---|---|---|
| committer | Martin Rudalics <rudalics@gmx.at> | 2026-05-22 19:33:57 +0200 |
| commit | d6f7b2d99bdbcc29e8784185612282a508cc3e84 (patch) | |
| tree | eabc66747b6a75e8acf61949057df4ed77faf101 /java | |
| parent | e0fbecaf658b95d3c53aa9f1bc078a3326a3f77c (diff) | |
Save/restore old_buffer slot via window configurations (Bug#81097)
With Emacs 31 the old_buffer slot of a window gets overwritten
with the buffer unshown in that window when that window is
deleted. Fset_window_configuration triggers that when calling
delete_all_child_windows. If a window configuration gets saved
and restored in one and the same redisplay cycle, the change
time stamps of the window and its frame will be equal and
'window-buffer-change-functions' may wrongly decide that the
window's buffer has not changed because its buffer and
old_buffer slots refer to the same buffer (Bug#81097). Fix that
by saving and restoring the old_buffer slot.
* src/window.c (struct saved_window): Add 'old_buffer' slot.
(Fset_window_configuration): Restore old_buffer slot.
(save_window_save): Save old_buffer slot.
Diffstat (limited to 'java')
0 files changed, 0 insertions, 0 deletions
