GNU bug report logs - #11199
24.0.95; killing right-to-left text at eob leads to inconsistent state

Previous Next

Package: emacs;

Reported by: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>

Date: Sun, 8 Apr 2012 02:28:02 UTC

Severity: normal

Found in version 24.0.95

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #44 received at 11199 <at> debbugs.gnu.org (full text, mbox):

From: Michael Welsh Duggan <md5i <at> md5i.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 11199 <at> debbugs.gnu.org
Subject: Re: bug#11199: 24.0.95;
	killing right-to-left text at eob leads to inconsistent state
Date: Sun, 08 Apr 2012 17:01:31 -0400
Eli Zaretskii <eliz <at> gnu.org> writes:

>> Date: Sun, 08 Apr 2012 23:37:22 +0300
>> From: Eli Zaretskii <eliz <at> gnu.org>
>> Cc: 11199 <at> debbugs.gnu.org
>> 
>> > (gdb) p row->end
>> > $8 = {
>> >   pos = {
>> >     charpos = 309, 
>> >     bytepos = 313
>> >   }, 
>
> Btw, if row->end is at character position 309, how come in this frame:
>
>   #1  0x080779e7 in init_iterator (it=0xbfffa878, w=0x88e30d0, charpos=308, 
>       bytepos=311, row=0x0, base_face_id=DEFAULT_FACE_ID) at xdisp.c:2507
>
> init_iterator is called with character position 308?  What is `pos' in
> this frame #2:
>
>   #2  0x080794bb in init_from_display_pos (it=0xbfffa878, w=0x88e30d0, 
>       pos=0x8dccc58) at xdisp.c:2951
>
> That is,
>
>  (gdb) frame 2
>  (gdb) p *pos

I had to recreate the error, so to make sure the numbers were
consistent, I re-printed out these positions from different frames:

Breakpoint 1, abort () at emacs.c:390
(gdb) up
#1  0x080779e7 in init_iterator (it=0xbfffa878, w=0x88e30d0, charpos=308, 
    bytepos=311, row=0x0, base_face_id=DEFAULT_FACE_ID) at xdisp.c:2507
(gdb) up
#2  0x080794bb in init_from_display_pos (it=0xbfffa878, w=0x88e30d0, 
    pos=0x8d60df0) at xdisp.c:2951
(gdb) p *pos
$9 = {
  pos = {
    charpos = 308, 
    bytepos = 311
  }, 
  overlay_string_index = -1, 
  string_pos = {
    charpos = -1, 
    bytepos = -1
  }, 
  dpvec_index = -1
}
(gdb) up
#3  0x08079810 in init_to_row_end (it=0xbfffa878, w=0x88e30d0, row=0x8d60d88)
    at xdisp.c:3054
(gdb) p row->end
$10 = {
  pos = {
    charpos = 308, 
    bytepos = 311
  }, 
  overlay_string_index = -1, 
  string_pos = {
    charpos = -1, 
    bytepos = -1
  }, 
  dpvec_index = -1
}
(gdb) up
#4  0x080a82f0 in try_window_id (w=0x88e30d0) at xdisp.c:17140
(gdb) p row->end
$11 = {
  pos = {
    charpos = 309, 
    bytepos = 313
  }, 
  overlay_string_index = -1, 
  string_pos = {
    charpos = -1, 
    bytepos = -1
  }, 
  dpvec_index = -1
}
(gdb) 

-- 
Michael Welsh Duggan
(md5i <at> md5i.com)




This bug report was last modified 13 years and 41 days ago.

Previous Next


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