From e99c752190064f6d73540fb61556dabdbc0b83f9 Mon Sep 17 00:00:00 2001 From: Jan Djärv Date: Wed, 8 Feb 2006 13:39:52 +0000 Subject: * window.c (adjust_window_trailing_edge): Check that shrinking does not set a window to size zero or less. --- src/ChangeLog | 5 +++++ src/window.c | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/src/ChangeLog b/src/ChangeLog index 477d7e421f..40d498b5d4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2006-02-08 Jan Dj,Ad(Brv + + * window.c (adjust_window_trailing_edge): Check that shrinking + does not set a window to size zero or less. + 2006-02-08 Miles Bader * editfns.c (Fconstrain_to_field): Use Fget_char_property instead diff --git a/src/window.c b/src/window.c index 1df0320f01..5ffb8c9559 100644 --- a/src/window.c +++ b/src/window.c @@ -4284,6 +4284,14 @@ adjust_window_trailing_edge (window, delta, horiz_flag) { if (!NILP (XWINDOW (window)->next)) { + /* This may happen for the minibuffer. In that case + the window_deletion_count check below does not work. */ + if (XINT (CURSIZE (p->next)) - delta <= 0) + { + Fset_window_configuration (old_config); + error ("Cannot adjust window size as specified"); + } + XSETINT (CURBEG (p->next), XINT (CURBEG (p->next)) + delta); size_window (p->next, XINT (CURSIZE (p->next)) - delta, -- cgit v1.2.3