might crash Emacs. */
#define MIN_SAFE_WINDOW_WIDTH (2)
-#define MIN_SAFE_WINDOW_HEIGHT (2)
+#define MIN_SAFE_WINDOW_HEIGHT (1)
/* Make sure that window_min_height and window_min_width are
not too small; if they are, set them to safe minima. */
{
/* If trying to grow this window to or beyond size of the parent,
just delete all the sibling windows. */
- Lisp_Object tem, next;
+ Lisp_Object start, tem, next;
- tem = XWINDOW (parent)->vchild;
- if (NILP (tem))
- tem = XWINDOW (parent)->hchild;
+ start = XWINDOW (parent)->vchild;
+ if (NILP (start))
+ start = XWINDOW (parent)->hchild;
+ /* Delete any siblings that come after WINDOW. */
+ tem = XWINDOW (window)->next;
while (! NILP (tem))
{
next = XWINDOW (tem)->next;
- if (!EQ (tem, window))
- delete_window (tem);
+ delete_window (tem);
+ tem = next;
+ }
+
+ /* Delete any siblings that come after WINDOW.
+ Note that if START is not WINDOW, then WINDOW still
+ Fhas siblings, so WINDOW has not yet replaced its parent. */
+ tem = start;
+ while (! EQ (tem, window))
+ {
+ next = XWINDOW (tem)->next;
+ delete_window (tem);
tem = next;
}
}