GNU bug report logs -
#410
23.0.60; display-buffer regression
Previous Next
Full log
View this message in rfc822 format
In GNU Emacs 23.0.60.1 (i686-pc-linux-gnu, GTK+ Version 2.12.0)
of 2008-06-13 on escher
The recent reimplementation of display-buffer in lisp resulted in the
following changed behavior, which I consider a regression:
1. emacs -Q
2. M-x calendar
==> The window is vertically split, the *scratch* buffer above and
the Calendar buffer is below in a smaller window sized to fit.
3. M-: (pop-to-buffer (get-buffer "*Messages*"))
==> Now the *Messages* buffer is above and the Calendar buffer is
still below, but the windows are evenly split, i.e. the Calendar
window is no longer sized to fit but is too big. Prior to the
reimplementation of display-buffer doing this step did not change the
height of the Calendar window.
The behavior in step 3 results from the invocation of
window--even-window-heights in the last clause of the cond in
display-buffer, which happens because the *Messages* buffer exits but is
not displayed. If the sexp in step 3 contained *scratch* instead of
*Messages*, the height of the Calendar window would not have changed.
Looking at the pre-reimplementation source of Fdisplay_buffer, it looks
like the window heights should get evened out just as in the lisp
reimplementation; nevertheless, this is not what happens in the above
recipe with the older code. (I wanted to step through the code with gdb
but for some reason gdb failed to halt execution in the right source
file, so I could not pursue this.)
Steve Berman
This bug report was last modified 16 years and 362 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.