GNU bug report logs - #73752
29.4; Ligatures are randomly rendered with extra spaces

Previous Next

Package: emacs;

Reported by: xuan <at> xlk.me

Date: Fri, 11 Oct 2024 21:40:02 UTC

Severity: normal

Merged with 54646

Found in versions 29.0.50, 29.4

Fixed in version 30.1

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

Bug is archived. No further changes may be made.

Full log


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

From: Visuwesh <visuweshm <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: luangruo <at> yahoo.com, 73752 <at> debbugs.gnu.org, xuan <at> xlk.me
Subject: Re: bug#73752: 29.4; Ligatures are randomly rendered with extra spaces
Date: Wed, 30 Oct 2024 11:13:21 +0530
[செவ்வாய் அக்டோபர் 29, 2024] Eli Zaretskii wrote:

>> Thank you very much for the clear instructions.  I was testing this in a
>> fresh Emacs session.  And
>> 
>>     (gdb) pp composition_gstring_from_id(ID)
>> 
>> seems to show nothing?
>> 
>>     (gdb) c
>>     Continuing.
>> 
>>     Thread 1 "emacs" hit Breakpoint 3, set_cursor_from_row (w=0x55b8c994f338, row=0x55b8c9e20410, matrix=0x55b8c9960480, delta=0, delta_bytes=0, dy=0, dvpos=0) at xdisp.c:18217
>>     18217	  struct glyph *glyph = row->glyphs[TEXT_AREA];
>>     (gdb) pgrow
>>     TEXT: 4 glyphs
>>       0    0: COMP[16 (0..0)] pos=5 w=9 a+d=14+4 face=28 MB
>>       1    9: COMP[16 (1..1)] pos=6 w=9 a+d=14+4 face=28 MB
>>       2   18: COMP[16 (2..2)] pos=7 w=9 a+d=14+4 face=28 MB
>>       3   27: CHAR[ ] pos=0 blev=0,btyp=B w=9 a+d=14+4 MB
>>     (gdb) pp composition_gstring_from_id(16)
>>     (gdb) p composition_gstring_from_id(16)
>>     $1 = XIL(0x55b8cada607d)
>> 
>> Am I missing something?
>
> Maybe your Emacs is not built with enough debug info?

I built a debug version of Emacs specifically for this.

    ./configure --with-sound=alsa --with-x-toolkit=lucid --without-xaw3d \
                --without-gconf --without-libsystemd --with-cairo \
                --enable-checking='yes,glyphs' \
                --enable-check-lisp-object-type CFLAGS='-O0 -g3'

> What does this produce:
>
>   (gdb) p composition_gstring_from_id(16)
>   $1 = XIL(0x55b8cada607d)
>   (gdb) xpr
>
> If this doesn't work, either, you will have to decypher
> XIL(0x55b8cada607d) "by hand", using xvector etc...  I can give you
> instructions for that as well.

    (gdb) p composition_gstring_from_id(16)
    $3 = XIL(0x55b8cada607d)
    (gdb) xpr
    Lisp_Vectorlike
    PVEC_NORMAL_VECTOR
    $4 = (struct Lisp_Vector *) 0x55b8cada6078
    {XIL(0x55b8cada60ad), make_fixnum(16), XIL(0x55b8cada60d5), XIL(0x55b8cada612d), XIL(0x55b8cada6185)}

So I am guessing we do need to decypher it "by hand"?




This bug report was last modified 251 days ago.

Previous Next


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