[webkit-changes] [WebKit/WebKit] ad8cdb: [GTK] Do not use the WebPage identifier as surface...

Carlos Garcia Campos noreply at github.com
Mon Jun 19 00:27:02 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ad8cdbb4844427a1f52aaec9d0bddf6920835c9e
      https://github.com/WebKit/WebKit/commit/ad8cdbb4844427a1f52aaec9d0bddf6920835c9e
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2023-06-19 (Mon, 19 Jun 2023)

  Changed paths:
    M Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp
    M Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.h

  Log Message:
  -----------
  [GTK] Do not use the WebPage identifier as surface identifier for DMA-BUF renderer
https://bugs.webkit.org/show_bug.cgi?id=258197

Reviewed by Michael Catanzaro.

The web page identifier is reused when doing history navigation, so it
can happen that the old surface is destroyed after the new one is
created, and the message receiver is removed because the same ID is
used. Because of this, sometimes the web view is no longer updated after
a history navigation. Use our own identifier for every surface to fix
the problem.

* Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp:
(WebKit::generateID):
(WebKit::AcceleratedSurfaceDMABuf::AcceleratedSurfaceDMABuf):
(WebKit::AcceleratedSurfaceDMABuf::RenderTarget::RenderTarget):
(WebKit::AcceleratedSurfaceDMABuf::RenderTargetEGLImage::create):
(WebKit::AcceleratedSurfaceDMABuf::RenderTargetEGLImage::RenderTargetEGLImage):
(WebKit::AcceleratedSurfaceDMABuf::RenderTargetSHMImage::create):
(WebKit::AcceleratedSurfaceDMABuf::RenderTargetSHMImage::RenderTargetSHMImage):
(WebKit::AcceleratedSurfaceDMABuf::didCreateCompositingRunLoop):
(WebKit::AcceleratedSurfaceDMABuf::willDestroyCompositingRunLoop):
(WebKit::AcceleratedSurfaceDMABuf::surfaceID const):
(WebKit::AcceleratedSurfaceDMABuf::clientResize):
(WebKit::AcceleratedSurfaceDMABuf::didRenderFrame):
* Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.h:

Canonical link: https://commits.webkit.org/265295@main




More information about the webkit-changes mailing list