Subject: Re: bug#60585: 30.0.50; global-text-scale-adjust shrinks window (was not before), was: Re: bug#52493: 29.0.50; Setting Inconsolata up in init.el makes default face rendered wrong

From: Po Lu <[email-masked]>
Date: Sun, 12 Feb 2023 11:26:49 +0800

Dmitry Gutov <[email-masked]> writes:

> Thread 1 "emacs" hit Breakpoint 3, XSetWMSizeHints (d=0x555555eb5e20,
> w=58720469, hints=0x7fffffffc870, prop=40) at emacsgtkfixed.c:187
> 187	      if (hints->flags & PResizeInc)
> (gdb) xbacktrace
> "internal-set-lisp-face-attribute" (0xf09ff218)
> "set-face-attribute" (0xffffd8c0)
> "progn" (0xffffda70)
> "eval" (0xf09ff180)
> "elisp--eval-last-sexp" (0xf09ff100)
> "eval-last-sexp" (0xffffdc50)
> "funcall-interactively" (0xffffdc48)
> "call-interactively" (0xf09ff070)
> "command-execute" (0xffffdef8)
> (gdb) p hints->width_inc
> $1 = 20
> (gdb) p hints->height_inc
> $2 = 44
> (gdb) backtrace
> #0  XSetWMSizeHints (d=0x555555eb5e20, w=58720469,
>  hints=0x7fffffffc870, prop=40) at emacsgtkfixed.c:187
> #1  0x00007ffff7575fa5 in  () at /lib/x86_64-linux-gnu/libgdk-3.so.0
> #2  0x00007ffff79bd37b in  () at /lib/x86_64-linux-gnu/libgtk-3.so.0
> #3  0x00007ffff706231c in g_signal_emit_valist () at
>  /lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #4  0x00007ffff7062403 in g_signal_emit () at
>  /lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #5  0x00007ffff7774980 in  () at /lib/x86_64-linux-gnu/libgtk-3.so.0
> #6  0x00007ffff706231c in g_signal_emit_valist () at
>  /lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #7  0x00007ffff7062403 in g_signal_emit () at
>  /lib/x86_64-linux-gnu/libgobject-2.0.so.0
> #8  0x00007ffff753ec3b in  () at /lib/x86_64-linux-gnu/libgdk-3.so.0
> #9  0x00007ffff752b2ab in  () at /lib/x86_64-linux-gnu/libgdk-3.so.0
> #10 0x00007ffff6f4bb02 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
> #11 0x00007ffff6f4b43f in g_main_context_dispatch () at
>  /lib/x86_64-linux-gnu/libglib-2.0.so.0
> #12 0x00007ffff6fa03c8 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
> #13 0x00007ffff6f48d20 in g_main_context_iteration () at
>  /lib/x86_64-linux-gnu/libglib-2.0.so.0
> #14 0x00007ffff7847609 in gtk_main_iteration () at
>  /lib/x86_64-linux-gnu/libgtk-3.so.0
> #15 0x000055555569ad52 in XTread_socket (terminal=<optimized out>,
>  hold_quit=0x7fffffffd0a0) at xterm.c:25148
> #16 0x00005555556e8491 in gobble_input () at keyboard.c:7416
> #17 0x00005555556eb66d in handle_async_input () at keyboard.c:7647
> #18 process_pending_signals () at keyboard.c:7661
> #19 unblock_input_to (level=0) at keyboard.c:7676
> #20 unblock_input_to (level=0) at keyboard.c:7670
> #21 totally_unblock_input () at keyboard.c:7704
> #22 0x00005555556a2a0c in x_wait_for_event (f=f@entry=0x5555563131e0,
>  eventtype=eventtype@entry=22) at xterm.c:27809
> #23 0x00005555556d097f in xg_frame_set_char_size
>  (f=f@entry=0x5555563131e0, width=width@entry=1728,
>  height=height@entry=1620) at gtkutil.c:1425
> #24 0x00005555556a2d71 in x_set_window_size (f=0x5555563131e0,
>  change_gravity=<optimized out>, width=1728, height=1620) at
> xterm.c:27916
> #25 0x00005555555bd8b4 in adjust_frame_size
>     (f=f@entry=0x5555563131e0, new_text_width=1680,
>     new_text_height=<optimized out>, inhibit=inhibit@entry=3,
>     pretend=pretend@entry=false,
>     parameter=parameter@entry=XIL(0x7860)) at frame.c:779
> #26 0x000055555568f0e6 in x_new_font (f=0x5555563131e0,
>  font_object=XIL(0x55555695e80d), fontset=28) at xterm.c:26576
> #27 0x00005555555c49a6 in gui_set_font (f=0x5555563131e0,
>  arg=XIL(0x5555569060a4), oldval=XIL(0x55555627fa54)) at frame.c:4791
> #28 0x00005555555c2349 in gui_set_frame_parameters_1
>  (f=f@entry=0x5555563131e0, alist=<optimized out>,
>  alist@entry=XIL(0x7fffffffd6f3),
>  default_parameter=default_parameter@entry=true) at frame.c:4383
> #29 0x0000555555680221 in set_font_frame_param
>  (lface=XIL(0x5555563650d5), frame=XIL(0x5555563131e5)) at
> xfaces.c:3816
> #30 Finternal_set_lisp_face_attribute (face=XIL(0x5940),
>  attr=<optimized out>, value=<optimized out>, frame=<optimized out>)
> at xfaces.c:3629
> #31 0x000055555567eeb8 in Finternal_set_lisp_face_attribute
>  (face=XIL(0x5940), attr=XIL(0xdb0), value=XIL(0x555556905a94),
>  frame=<optimized out>) at xfaces.c:3092
> ...

Right, thank you.  If you go up to frame 23, and then:

  (gdb) p f->size_hints
  (gdb) p f->hint_flags

What is displayed?
Also, what is:

  (gdb) p xg_get_scale (f)

?