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

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

bug#59306: 29.0.50; Resurrected bug?


From: Dmitry Gutov
Subject: bug#59306: 29.0.50; Resurrected bug?
Date: Sun, 20 Nov 2022 18:47:32 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2

On 20.11.2022 02:36, Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote:
Dmitry Gutov<dgutov@yandex.ru>  writes:

No change since the last test I tried: fonts seem fine, but the frame
size is jumping. I even did 'make bootstrap' to be doubly sure.
Thanks.  Could you place a breakpoint on `apply_xft_settings' before
starting "emacs -Q", step through it, and try to find out what causes
the `changed' variable to be set to true?

Apparently it's this part:

#ifdef FC_HINT_STYLE
  if ((settings->seen & SEEN_HINTSTYLE) != 0
      && oldsettings.hintstyle != settings->hintstyle)
    {
      FcPatternDel (pat, FC_HINT_STYLE);
      FcPatternAddInteger (pat, FC_HINT_STYLE, settings->hintstyle);
      changed = true;
      oldsettings.hintstyle = settings->hintstyle;
    }
#endif

Here's the relevant part of the gdb log, since I don't have much experience with it. The assignment statement itself seems to be missing from the stepping, but 'changed' became true after:

(gdb) n
842       FcPatternGetDouble (pat, FC_DPI, 0, &oldsettings.dpi);
(gdb) p changed
$2 = false
(gdb) n
844 if ((settings->seen & SEEN_AA) != 0 && oldsettings.aa != settings->aa)
(gdb) n
852       if ((settings->seen & SEEN_HINTING) != 0
(gdb) n
860 if ((settings->seen & SEEN_RGBA) != 0 && oldsettings.rgba != settings->rgba)
(gdb) n
869       if ((settings->seen & SEEN_LCDFILTER) != 0
(gdb) n
879       if ((settings->seen & SEEN_HINTSTYLE) != 0
(gdb) n
882           FcPatternDel (pat, FC_HINT_STYLE);
(gdb) n
883           FcPatternAddInteger (pat, FC_HINT_STYLE, settings->hintstyle);
(gdb) n
885           oldsettings.hintstyle = settings->hintstyle;
(gdb) n
894       oldsettings.dpi = dpyinfo->resx;
(gdb) p changed
$3 = true





reply via email to

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