emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master b868690feff: Fix bug#69140


From: Po Lu
Subject: master b868690feff: Fix bug#69140
Date: Thu, 22 Feb 2024 21:18:36 -0500 (EST)

branch: master
commit b868690feff44c7242c942490d1d8bc6d2811fa2
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    Fix bug#69140
    
    * src/window.c (grow_mini_window): Don't adjust frame matrices
    or force redisplay if the provided window cannot be
    resized.  (bug#69140)
---
 src/window.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/window.c b/src/window.c
index 565ad00804f..0c84b4f4bf3 100644
--- a/src/window.c
+++ b/src/window.c
@@ -5380,7 +5380,14 @@ grow_mini_window (struct window *w, int delta)
       grow = call3 (Qwindow__resize_root_window_vertically,
                    root, make_fixnum (- delta), Qt);
 
-      if (FIXNUMP (grow) && window_resize_check (r, false))
+      if (FIXNUMP (grow)
+         /* It might be impossible to resize the window, in which case
+            calling resize_mini_window_apply will set off an infinite
+            loop where the redisplay cycle so forced returns to
+            resize_mini_window, making endless attempts to expand the
+            minibuffer window to this impossible size.  (bug#69140) */
+         && XFIXNUM (grow) != 0
+         && window_resize_check (r, false))
        resize_mini_window_apply (w, -XFIXNUM (grow));
     }
 }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]