bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#16049: 24.3.50; xdisp.c infloop on Mac OS X 10.9


From: Jan Djärv
Subject: bug#16049: 24.3.50; xdisp.c infloop on Mac OS X 10.9
Date: Sat, 7 Dec 2013 15:26:46 +0100

Hello.

7 dec 2013 kl. 10:16 skrev Eli Zaretskii <eliz@gnu.org>:

>> From: Jan Djärv <jan.h.d@swipnet.se>
>> Date: Sat, 7 Dec 2013 09:25:29 +0100
>> Cc: Eli Zaretskii <eliz@gnu.org>,
>> Jules Colding <colding@venalicium.dk>,
>> 16049@debbugs.gnu.org
>> 
>> Next problem, infloop in move_it_vertically_backward, xdisp.c
>> 
>> It just keeps going back to move_further_back: but no values are actually 
>> changed in the code inbetween.  I don't know whats bad here, values looks 
>> fine to me.  window_box_height is called
>> and returns 490, which is the pixel size.
>> 
>> Backtrace:
> 
> Here's one sign of the trouble:
> 
>>      nchars_per_row = 0
> 
> This is the number of canonical-width characters that fit in a full
> screen line, which obviously cannot be zero.  It is computed at the
> beginning of move_it_vertically_backward like this:
> 
>  int nchars_per_row
>    = (it->last_visible_x - it->first_visible_x) / FRAME_COLUMN_WIDTH (it->f);
> 
> So now we look for the values of it->last_visible_x and
> it->first_visible_x.  The contents of it are not available in "bt
> full", but there are locals it2 and it3, which use copies of the same
> metrics.  And here we find this:
> 
>  first_visible_x = 2147483643, 
>  last_visible_x = 2147483642, 
> 
> which is obviously bogus, since those are supposed to be the pixel
> coordinates of the first screen-line pixel shown at the left edge of
> the window (usually zero, but can be positive when lines are truncated
> and the window is hscrolled), and of the last screen-line pixel shown
> at the right edge.

There was a mixup with pixels and columns. I think I fixed this now, but I will 
have to adjust for GNUStep.  But I'm closing this bug.

Thanks Eli and Martin for all the help.

        Jan D.






reply via email to

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