From: Miles Bader Date: Fri, 15 Dec 2000 00:59:56 +0000 (+0000) Subject: (window_box_height): Only use mode-line glyph-rows that are actually X-Git-Tag: emacs-pretest-21.0.95~511 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=97dff879ca7aeb61a9d014d9cee7dd0ab173d127;p=emacs.git (window_box_height): Only use mode-line glyph-rows that are actually marked as mode-lines; otherwise use estimate_mode_line_height. --- diff --git a/src/xdisp.c b/src/xdisp.c index 11859e8d85b..f4324caa9bc 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -843,10 +843,28 @@ window_box_height (w) xassert (height >= 0); if (WINDOW_WANTS_MODELINE_P (w)) - height -= CURRENT_MODE_LINE_HEIGHT (w); + { + struct glyph_row *ml_row + = (w->current_matrix && w->current_matrix->rows + ? MATRIX_MODE_LINE_ROW (w->current_matrix) + : 0); + if (ml_row && ml_row->mode_line_p) + height -= ml_row->height; + else + height -= estimate_mode_line_height (f, MODE_LINE_FACE_ID); + } if (WINDOW_WANTS_HEADER_LINE_P (w)) - height -= CURRENT_HEADER_LINE_HEIGHT (w); + { + struct glyph_row *hl_row + = (w->current_matrix && w->current_matrix->rows + ? MATRIX_HEADER_LINE_ROW (w->current_matrix) + : 0); + if (hl_row && hl_row->mode_line_p) + height -= hl_row->height; + else + height -= estimate_mode_line_height (f, HEADER_LINE_FACE_ID); + } return height; }