# HG changeset patch # User Gerd Moellmann # Date 937486347 0 # Node ID e26ea124e0090c799e9902e1dc65beb538e133a8 # Parent 68659a16bc42a9cde860c1cb17a169fbb4c15f8d (resize_mini_window): Temporarily set the selected window's or Vminibuf_scroll_window's height to "fixed" around the call the change_window_height. diff -r 68659a16bc42 -r e26ea124e009 src/xdisp.c --- a/src/xdisp.c Thu Sep 16 12:52:25 1999 +0000 +++ b/src/xdisp.c Thu Sep 16 12:52:27 1999 +0000 @@ -5507,12 +5507,24 @@ || BEGV == ZV) { Lisp_Object old_selected_window; + Lisp_Object fix_window; int old_height = XFASTINT (w->height); freeze_window_starts (f, height > XFASTINT (w->height)); + + /* If the mini-buffer is selected, try to not change + the height of Vminibuf_scroll_window. Otherwise try + to not change the height of the selected window. */ + if (MINI_WINDOW_P (XWINDOW (selected_window))) + fix_window = Vminibuf_scroll_window; + else + fix_window = selected_window; + old_selected_window = selected_window; XSETWINDOW (selected_window, w); + XWINDOW (fix_window)->height_fixed_p = 1; change_window_height (height - XFASTINT (w->height), 0); + XWINDOW (fix_window)->height_fixed_p = 0; selected_window = old_selected_window; window_height_changed_p = XFASTINT (w->height) != old_height; }