From: Martin Rudalics Date: Tue, 31 Dec 2013 19:06:18 +0000 (+0100) Subject: Fix last change of grow_mini_window. X-Git-Tag: emacs-24.3.90~173^2^2~42^2~45^2~387^2~116 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=91415fb1cd0f913be6e8a2409b0d9cdca4352f3f;p=emacs.git Fix last change of grow_mini_window. * window.c (grow_mini_window): Fix last change. --- diff --git a/src/ChangeLog b/src/ChangeLog index a363ce331fa..93d84b26b9c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2013-12-31 Martin Rudalics + + * window.c (grow_mini_window): Fix last change. + 2013-12-31 Jan Djärv * nsterm.m (windowDidResignKey:): Set mouse_moved to 0 (Bug#8421). diff --git a/src/window.c b/src/window.c index 1e3d70fd88d..de1e2d2c068 100644 --- a/src/window.c +++ b/src/window.c @@ -4582,24 +4582,24 @@ grow_mini_window (struct window *w, int delta, bool pixelwise) if (pixelwise) { - pixel_height = max (min (-XINT (height), INT_MAX - w->pixel_height), - FRAME_LINE_HEIGHT (f)); + pixel_height = min (-XINT (height), INT_MAX - w->pixel_height); line_height = pixel_height / FRAME_LINE_HEIGHT (f); } else { - line_height = max (min (-XINT (height), - ((INT_MAX - w->pixel_height) - / FRAME_LINE_HEIGHT (f))), - 1); + line_height = min (-XINT (height), + ((INT_MAX - w->pixel_height) + / FRAME_LINE_HEIGHT (f))); pixel_height = line_height * FRAME_LINE_HEIGHT (f); } /* Grow the mini-window. */ w->pixel_top = r->pixel_top + r->pixel_height; w->top_line = r->top_line + r->total_lines; - w->pixel_height += pixel_height; - w->total_lines += line_height; + /* Make sure the mini-window has always at least one line. */ + w->pixel_height = max (w->pixel_height + pixel_height, + FRAME_LINE_HEIGHT (f)); + w->total_lines = max (w->total_lines + line_height, 1); /* Enforce full redisplay of the frame. */ /* FIXME: Shouldn't window--resize-root-window-vertically do it? */