Subject: bug#19972: 24.4; Font size change doesn't update (window-total-width)

From: Joost Kremers <[email-masked]>
Date: Mon, 02 Mar 2015 23:26:58 +0100

On Mon, Mar 02 2015, Eli Zaretskii <[email-masked]> wrote:
>> From: Joost Kremers <[email-masked]>
>> Cc: [email-masked], [email-masked]
>> Date: Mon, 02 Mar 2015 04:59:25 +0100
>> 
>> > I asked about values returned by window-width in this scenario, can
>> > you provide them?
>> 
>> Sorry, forgot that. `window-width' doesn't have the same issue. On my
>> system, with a maximised Emacs frame (Emacs version 25.0.50.1), it
>> returns 236 before `custom-push-theme' + `face-spec-recalc', and 188
>> after it, even without doing `C-x 3' followed by `C-x 1'.
>
> In that case, I guess if you call (window-total-width 'round), you
> will see the correct value even before "C-x 3", right?

No, it doesn't. It still returns 240, i.e., the same value returned by
(window-total-width).

(window-width) returns 188.

(frame-total-cols) returns 192.

After C-x 3 C-x 1, (window-total-width) also returns 192.

(All of this with Emacs 25.0.50.1 and a maximised frame.)

> Joost, could you find out where does w->pixel_size change in your
> recipe (where 'w' is the pointer to the window displaying *scratch*)?

I'd be happy to, but...

> If my guess is correct, it should change twice: once as shown below in
> the backtrace I produced, and then once more, where it changes back to
> the dimensions of your display.  We are interested to know where is
> that second time, and who calls that code.
>
> One way of finding this out is to put a watchpoint in GDB on
> w->pixel_size.  Let me know if you need more detailed instructions for
> how to do it.

That would be great, since I have only basic knowledge of GDB.

-- 
Joost Kremers
Life has its moments