Subject: Re: bug#38497: 27.0.50; Frame is not rendered when frame-resize-pixelwise it 't

From: Ihor Radchenko <[email-masked]>
Date: Mon, 16 Dec 2019 21:04:15 +0800

> Could you try the patch below?

Redrawing started working with this patch. Thank you!

Best regards,
Ihor

[email-masked] writes:

>>> With 'frame-resize-pixelwise' non-nil?
>>
>> No, frame-resize-pixelwise had its default value (nil).
>>
>> To avoid confusion, let me recall what I did to reproduce the redrawing
>> issue:
>>
>> 1. Compile emacs with xft cairo and lucid
>> 2. emacs -Q (frame-resize-pixelwise is nil by default)
>> 3. Maximise emacs frame (without this, there is an artefact in the title
>>    bar, but emacs frame itself is redrawing)
>> 4. M-x menu-bar-mode
>
> Could you try the patch below?
>
> 				     YAMAMOTO Mitsuharu
> 				[email-masked]
>
> diff --git a/src/xterm.c b/src/xterm.c
> index 55e5cb76f2..3d6f59c48c 100644
> --- a/src/xterm.c
> +++ b/src/xterm.c
> @@ -8931,8 +8931,9 @@ handle_one_xevent (struct x_display_info *dpyinfo,
>          font_drop_xrender_surfaces (f);
>        unblock_input ();
>  #if defined USE_CAIRO && !defined USE_GTK
> -      if (f)
> -	x_cr_update_surface_desired_size (f, configureEvent.xconfigure.width,
> +      if (any && configureEvent.xconfigure.window == FRAME_X_WINDOW (any))
> +	x_cr_update_surface_desired_size (any,
> +					  configureEvent.xconfigure.width,
>  					  configureEvent.xconfigure.height);
>  #endif
>  #ifdef USE_GTK
>
>