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

From: [email-masked]
Date: Mon, 16 Dec 2019 19:53:37 +0900

>> 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