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


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Michael Welsh Duggan <md5i <at> md5i.com>
Cc: 11199 <at> debbugs.gnu.org, mituharu <at> math.s.chiba-u.ac.jp
Subject: bug#11199: 24.0.95; killing right-to-left text at eob leads to inconsistent state
Date: Sun, 08 Apr 2012 23:37:22 +0300
> From: Michael Welsh Duggan <md5i <at> md5i.com>
> Cc: mituharu <at> math.s.chiba-u.ac.jp,  11199 <at> debbugs.gnu.org
> Date: Sun, 08 Apr 2012 16:25:46 -0400
> 
> >> (gdb) pgrowx last_unchanged_at_beg_row
> >> TEXT: 68 glyphs
> >>   0    0: CHAR[ ] pos=237 blev=0,btyp=L w=8 a+d=12+3 MB
> >> ...
> >>  66  528: CHAR[)] pos=303 blev=0,btyp=L w=8 a+d=12+3 MB
> >>  67  536: CHAR[ ] pos=0 blev=0,btyp=B w=8 a+d=12+3 MB
> >> (gdb) prowlims last_unchanged_at_beg_row
> >> edges=(237,305),r2l=0,cont=0,trunc=(0,0),at_zv=0
> >> (gdb) 
> >
> > And what does the following produce in this frame?
> >
> >   (gdb) p row->end
> 
> (gdb) p row->end
> $8 = {
>   pos = {
>     charpos = 309, 
>     bytepos = 313
>   }, 

That's the problem: the end position does not correspond to the actual
buffer positions of the characters in the glyph row (which are 237 to
303).  But how could that happen?..  And why doesn't it happen to me?
I cannot even make init_to_row_end be called when I type C-k.

Btw, if you set bidi-display-reordering nil in *scratch* before typing
the recipe, does the crash still happen?




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

Previous Next


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