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

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

bug#73752: 29.4; Ligatures are randomly rendered with extra spaces


From: Eli Zaretskii
Subject: bug#73752: 29.4; Ligatures are randomly rendered with extra spaces
Date: Sat, 02 Nov 2024 19:44:31 +0200

> From: Visuwesh <visuweshm@gmail.com>
> Cc: dev@real-or-random.org,  xuan@xlk.me,  73752@debbugs.gnu.org
> Date: Sat, 02 Nov 2024 23:09:40 +0530
> 
> [சனி நவம்பர் 02, 2024] Eli Zaretskii wrote:
> 
> >> >> >  What does GDB show if you type
> >> >> >
> >> >> >   (gdb) p LGLYPH_ADJUSTMENT(lglyph)
> >> >> >   (gdb) p Qnil
> >> >> 
> >> >>     (gdb) p LGLYPH_ADJUSTMENT(lglyph)
> >> >>     $3 = XIL(0)
> >> >>     (gdb) p Qnil
> >> >>     $4 = XIL(0)
> >> >
> >> > OK, but then why did the breakpoint break, when the condition is
> >> > obviously false: LGLYPH_ADJUSTMENT(lglyph) == Qnil.
> >> >
> >> > What happens if you type this:
> >> >
> >> >   (gdb) p Qnil+0
> >> 
> >>     (gdb) p Qnil+0
> >>     Attempt to take address of value not located in memory.
> >
> > And this:
> >
> >   (gdb) ptype Qnil
> 
>     (gdb) ptype Qnil
>     type = struct Lisp_Object {
>         Lisp_Word i;
>     }

Ah, that explains the problem.  Then please change the breakpoint
condition to say this instead, and re-run the experiment:

 break hbfont.c:598 if xoff == 0 && yoff == 0 && wadjust == metrics.width && 
((struct Lisp_Object)LGLYPH_ADJUSTMENT(lglyph)).i != 0





reply via email to

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