Title: [260631] releases/WebKitGTK/webkit-2.28/Source/WebKit
Revision
260631
Author
[email protected]
Date
2020-04-24 02:20:50 -0700 (Fri, 24 Apr 2020)

Log Message

Merge r260570 - [GTK] Crash in cairo_surface_mark_dirty_rectangle() in accelerated compositing mode under X11
https://bugs.webkit.org/show_bug.cgi?id=210636

Patch by John Frankish <[email protected]> on 2020-04-23
Reviewed by Carlos Garcia Campos.

When cairo is configured to use xcb instead of xlib, it might use an image surface attached to the xlib one as
snapshot. In that case a flush is needed to detach that snapshot after we have drawn the surface in the
context.

* UIProcess/gtk/AcceleratedBackingStoreX11.cpp:
(WebKit::AcceleratedBackingStoreX11::paint): Call cairo_surface_flush() after drawing.

Modified Paths

Diff

Modified: releases/WebKitGTK/webkit-2.28/Source/WebKit/ChangeLog (260630 => 260631)


--- releases/WebKitGTK/webkit-2.28/Source/WebKit/ChangeLog	2020-04-24 09:20:46 UTC (rev 260630)
+++ releases/WebKitGTK/webkit-2.28/Source/WebKit/ChangeLog	2020-04-24 09:20:50 UTC (rev 260631)
@@ -1,3 +1,17 @@
+2020-04-23  John Frankish  <[email protected]>
+
+        [GTK] Crash in cairo_surface_mark_dirty_rectangle() in accelerated compositing mode under X11
+        https://bugs.webkit.org/show_bug.cgi?id=210636
+
+        Reviewed by Carlos Garcia Campos.
+
+        When cairo is configured to use xcb instead of xlib, it might use an image surface attached to the xlib one as
+        snapshot. In that case a flush is needed to detach that snapshot after we have drawn the surface in the
+        context.
+
+        * UIProcess/gtk/AcceleratedBackingStoreX11.cpp:
+        (WebKit::AcceleratedBackingStoreX11::paint): Call cairo_surface_flush() after drawing.
+
 2020-04-17  Carlos Garcia Campos  <[email protected]>
 
         [GTK][X11] REGRESSION(r259944): Wrong position of select popup menu in X11

Modified: releases/WebKitGTK/webkit-2.28/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreX11.cpp (260630 => 260631)


--- releases/WebKitGTK/webkit-2.28/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreX11.cpp	2020-04-24 09:20:46 UTC (rev 260630)
+++ releases/WebKitGTK/webkit-2.28/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreX11.cpp	2020-04-24 09:20:50 UTC (rev 260631)
@@ -201,6 +201,8 @@
 
     cairo_restore(cr);
 
+    cairo_surface_flush(m_surface.get());
+
     return true;
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to