It definitely looks like that, because it doesn't happen on my macOS Emacs (compiled from the same git as for Linux). When I return home, I was thinking about compiling Emacs on Linuux for GTK3 but disabling CAIRO... would that make eny sense?

/PA

On Mon, 21 Nov 2022 at 01:35, Po Lu <luangruo@yahoo.com> wrote:
Dmitry Gutov <dgutov@yandex.ru> writes:

> 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

Thanks.  That's quite annoying, I guess Cairo isn't reporting the
default hint style to us either.

I can't think of a good solution off-hand, please give me some more
time.


--
Fragen sind nicht da um beantwortet zu werden,
Fragen sind da um gestellt zu werden
Georg Kreisler

Headaches with a Juju log:
unit-basic-16: 09:17:36 WARNING juju.worker.uniter.operation we should run a leader-deposed hook here, but we can't yet