GNU bug report logs - #5856
24.0.50; Crash in redisplay

Previous Next

Package: emacs;

Reported by: Jan Djärv <jan.h.d <at> swipnet.se>

Date: Wed, 7 Apr 2010 19:12:02 UTC

Severity: normal

Done: Jan Djärv <jan.h.d <at> swipnet.se>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 5856 <at> debbugs.gnu.org
Subject: bug#5856: 24.0.50; Crash in redisplay
Date: Thu, 08 Apr 2010 08:16:13 +0200
Eli Zaretskii skrev:
>> Date: Wed, 07 Apr 2010 21:11:13 +0200
>> From: Jan Djärv <jan.h.d <at> swipnet.se>
>> Cc: 
>>
>> Sometimes I get a segmentation violation and emacs dies.
>> I just managed to catch it in the debugger.  Backtrace below (very long,
>> but instructions says to give bt full),
>> Let me know if you need more info, I'll keep it in the debugger for a
>> couple of days.  This is from trunk, updated and built today (Apr 7, 2010).
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> 0x000000000044d2f1 in set_cursor_from_row (w=0x1378d60, row=0x1fbf550,
>>      matrix=0x18217a0, delta=0, delta_bytes=0, dy=0, dvpos=0)
>>      at /home/jhd/src/emacs/fixes/src/xdisp.c:12775
>> 12775	  if (!(BUFFERP (glyph->object) && glyph->charpos == pt_old)
> 
> Ouch!  My bad, probably.
> 
> First, what caused the crash?  I think it's BUFFERP, so please tell
> what is glyph->object.
> 

(gdb) whatis glyph->object
type = Lisp_Object
(gdb) p glyph->object
$4 = 8079492959817000301
(gdb) pp glyph->object
#<INVALID_LISP_OBJECT 0x7020200a3b29656d>


> Also, can you tell something about what were you doing at the moment
> of the crash?  It looks like you were typing in the minibuffer, is
> that correct?

It is correct, I did C-x b and typed an x in the minibuffer when the crash 
occurred.  The contents of the minibuffer is two lines.

> 
> Finally, what does the GDB command "pgrow" print?
> 

(gdb) pgrow
TEXT: 80 glyphs
  0    0: CHAR[S] pos=1 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  1    7: CHAR[w] pos=2 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  2   14: CHAR[i] pos=3 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  3   21: CHAR[t] pos=4 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  4   28: CHAR[c] pos=5 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  5   35: CHAR[h] pos=6 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  6   42: CHAR[ ] pos=7 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  7   49: CHAR[t] pos=8 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  8   56: CHAR[o] pos=9 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
  9   63: CHAR[ ] pos=10 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 10   70: CHAR[b] pos=11 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 11   77: CHAR[u] pos=12 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 12   84: CHAR[f] pos=13 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 13   91: CHAR[f] pos=14 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 14   98: CHAR[e] pos=15 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 15  105: CHAR[r] pos=16 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 16  112: CHAR[ ] pos=17 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 17  119: CHAR[(] pos=18 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 18  126: CHAR[d] pos=19 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 19  133: CHAR[e] pos=20 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 20  140: CHAR[f] pos=21 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 21  147: CHAR[a] pos=22 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 22  154: CHAR[u] pos=23 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 23  161: CHAR[l] pos=24 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 24  168: CHAR[t] pos=25 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 25  175: CHAR[ ] pos=26 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 26  182: CHAR[x] pos=27 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 27  189: CHAR[s] pos=28 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 28  196: CHAR[e] pos=29 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 29  203: CHAR[t] pos=30 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 30  210: CHAR[t] pos=31 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 31  217: CHAR[i] pos=32 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 32  224: CHAR[n] pos=33 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 33  231: CHAR[g] pos=34 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 34  238: CHAR[s] pos=35 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 35  245: CHAR[.] pos=36 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 36  252: CHAR[h] pos=37 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 37  259: CHAR[)] pos=38 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 38  266: CHAR[:] pos=39 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 39  273: CHAR[ ] pos=40 blev=0,btyp=UNDEF w=7 a+d=11+3 face=27 MB
 40  280: CHAR[x] pos=41 blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 41  287: CHAR[{] str=175f681[0] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 42  294: CHAR[s] str=175f681[1] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 43  301: CHAR[e] str=175f681[2] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 44  308: CHAR[t] str=175f681[3] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 45  315: CHAR[t] str=175f681[4] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 46  322: CHAR[i] str=175f681[5] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 47  329: CHAR[n] str=175f681[6] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 48  336: CHAR[g] str=175f681[7] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 49  343: CHAR[s] str=175f681[8] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 50  350: CHAR[.] str=175f681[9] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 51  357: CHAR[c] str=175f681[10] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 52  364: CHAR[,] str=175f681[11] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 53  371: CHAR[l] str=175f681[12] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 54  378: CHAR[w] str=175f681[13] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 55  385: CHAR[m] str=175f681[14] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 56  392: CHAR[e] str=175f681[15] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 57  399: CHAR[n] str=175f681[16] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 58  406: CHAR[u] str=175f681[17] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 59  413: CHAR[.] str=175f681[18] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 60  420: CHAR[c] str=175f681[19] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 61  427: CHAR[,] str=175f681[20] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 62  434: CHAR[l] str=175f681[21] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 63  441: CHAR[w] str=175f681[22] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 64  448: CHAR[m] str=175f681[23] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 65  455: CHAR[e] str=175f681[24] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 66  462: CHAR[n] str=175f681[25] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 67  469: CHAR[u] str=175f681[26] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 68  476: CHAR[P] str=175f681[27] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 69  483: CHAR[.] str=175f681[28] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 70  490: CHAR[h] str=175f681[29] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 71  497: CHAR[,] str=175f681[30] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 72  504: CHAR[f] str=175f681[31] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 73  511: CHAR[n] str=175f681[32] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 74  518: CHAR[s] str=175f681[33] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 75  525: CHAR[.] str=175f681[34] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 76  532: CHAR[c] str=175f681[35] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 77  539: CHAR[,] str=175f681[36] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 78  546: CHAR[t] str=175f681[37] blev=0,btyp=UNDEF w=7 a+d=11+3 MB
 79  553: CHAR[e] str=175f681[38] blev=0,btyp=UNDEF w=7 a+d=11+3 MB


> Oh, btw: is this an optimized or an unoptimized build?

Unoptimized.

> 
>> (gdb) p *glyph
>> $3 = {
>>    charpos = 7589819289523352181,
>>    object = 8079492959817000301,
>>    pixel_width = 26991,
>>    ascent = 29806,
>>    descent = 29285,
>>    voffset = 26463,
>>    type = 2,
>>    multibyte_p = 0,
>>    left_box_line_p = 0,
>>    right_box_line_p = 1,
>>    overlaps_vertically_p = 1,
>>    padding_p = 1,
>>    glyph_not_available_p = 0,
>>    avoid_cursor_p = 1,
>>    resolved_level = 16,
>>    bidi_type = 1,
> 
> Hmm?.. looks like a garbled glyph structure...

Indeed.

	Jan D.






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

Previous Next


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