Subject: bug#38791: 27.0.60; Multiline mini-window fails to resize after clearing message

From: martin rudalics <[email-masked]>
Date: Mon, 30 Dec 2019 18:54:14 +0100

>> It apparently never entered my mind that WINDOW_BOX_TEXT_HEIGHT might
 >> mean something different from the height of that window's buffer text.
 >> Shameful.
 >
 > Well, the name is ambiguous.

I'd eventually want to keep only one function among
WINDOW_BOX_TEXT_HEIGHT, window_box_height and window_body_height.  But
before that we'd have to sort out which one to keep among
CURRENT_{MODE,HEADER,TAB}_LINE_HEIGHT,
WINDOW_{MODE,HEADER,TAB}_LINE_HEIGHT and the calculations done in
window_box_height.  Together with window_wants_{mode,header,tab}_line
I'm afraid that we have some circular definition here which is also
confirmed by the fact that using CURRENT_{MODE,HEADER,TAB}_LINE_HEIGHT
within other macros is usually frowned upon by gcc complaining about
missing sequence points due to the

((W)->{mode,header,tab}_line_height

assignments.  Parts of that dilemma also show up in miscalculating the
heights of the vertical scroll bar window as sketched in the thread on
Bug#38181.

In either case the bug you fixed here was all mine when I started to
squeeze the earlier shrink/grow call sequence into a single grow call.

 > I installed the fix, and I'm closing the bug report.

Thanks again, martin