GNU bug report logs - #4534
assertion failure at window.c:grow_mini_window

Previous Next

Package: emacs;

Reported by: Juanma Barranquero <lekktu <at> gmail.com>

Date: Wed, 23 Sep 2009 03:10:04 UTC

Severity: normal

Done: Juanma Barranquero <lekktu <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: martin rudalics <rudalics <at> gmx.at>
To: Juanma Barranquero <lekktu <at> gmail.com>
Cc: 4534 <at> debbugs.gnu.org
Subject: bug#4534: assertion failure at window.c:grow_mini_window
Date: Thu, 24 Sep 2009 17:32:22 +0200
[Message part 1 (text/plain, inline)]
>>              shrink_mini_window (w);
>>              ... should resize the mini_window down to one line ...
>
> That's exactly what happens, except that shrink_mini_window (w) does
> *not* resize the miniwindow; it's still 6 lines height. So

Too bad.  Anyway, this configuration is completely useless to get the
original sizes back when we're done with the miniwindow.  Could you try
brute force as in the untested patch attached?

martin
[xdisp.c.diff (text/plain, inline)]
*** xdisp.c.~1.1295.~	2009-08-20 10:47:19.687500000 +0200
--- xdisp.c	2009-09-24 17:23:23.937500000 +0200
***************
*** 8789,8816 ****
  	}
        else
  	{
! 	  /* Always resize to exact size needed.  */
! 	  if (height > WINDOW_TOTAL_LINES (w))
! 	    {
! 	      int old_height = WINDOW_TOTAL_LINES (w);
! 	      freeze_window_starts (f, 1);
! 	      grow_mini_window (w, height - WINDOW_TOTAL_LINES (w));
! 	      window_height_changed_p = WINDOW_TOTAL_LINES (w) != old_height;
! 	    }
! 	  else if (height < WINDOW_TOTAL_LINES (w))
! 	    {
! 	      int old_height = WINDOW_TOTAL_LINES (w);
! 	      freeze_window_starts (f, 0);
! 	      shrink_mini_window (w);
! 
! 	      if (height)
! 		{
! 		  freeze_window_starts (f, 1);
! 		  grow_mini_window (w, height - WINDOW_TOTAL_LINES (w));
! 		}
! 
! 	      window_height_changed_p = WINDOW_TOTAL_LINES (w) != old_height;
! 	    }
  	}
  
        if (old_current_buffer)
--- 8789,8799 ----
  	}
        else
  	{
! 	  int old_height = WINDOW_TOTAL_LINES (w);
! 	  freeze_window_starts (f, 1);
! 	  shrink_mini_window (w);
! 	  grow_mini_window (w, height - WINDOW_TOTAL_LINES (w));
! 	  window_height_changed_p = WINDOW_TOTAL_LINES (w) != old_height;
  	}
  
        if (old_current_buffer)

This bug report was last modified 15 years and 216 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.