diff options
author | Luboš Luňák <l.lunak@collabora.com> | 2019-10-29 13:05:06 +0100 |
---|---|---|
committer | Luboš Luňák <l.lunak@collabora.com> | 2019-11-27 09:55:12 +0100 |
commit | c9db77de2d7f9c9b12c4ec5490d56d69b472cde9 (patch) | |
tree | 9f1df8a125fb0a9aeca33257c66b77899f7b5666 /vcl/skia/x11 | |
parent | 5ac9a62f3a354db80837bdd1c95b763989b303bb (diff) |
more safe handling of destroying Skia surfaces/contexts
As the comment in SkiaSalGraphicsImpl::destroySurface() says,
they may both refer to each other's data when being destroyed,
so try to handle that.
Change-Id: I44353ed9d1888f8e8d15d93cd2c66414adfd372b
Diffstat (limited to 'vcl/skia/x11')
-rw-r--r-- | vcl/skia/x11/gdiimpl.cxx | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/vcl/skia/x11/gdiimpl.cxx b/vcl/skia/x11/gdiimpl.cxx index 72f3e65b5859..29119f092ac9 100644 --- a/vcl/skia/x11/gdiimpl.cxx +++ b/vcl/skia/x11/gdiimpl.cxx @@ -55,6 +55,7 @@ void X11SkiaSalGraphicsImpl::createSurface() winInfo.fVisualInfo = const_cast<SalVisual*>(&mX11Parent.GetVisual()); winInfo.fWidth = GetWidth(); winInfo.fHeight = GetHeight(); + destroySurface(); switch (renderMethodToUse()) { case RenderRaster: |