summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2020-01-31 11:47:08 +0100
committerLuboš Luňák <l.lunak@collabora.com>2020-01-31 13:21:14 +0100
commit62640556cca53ffa160456441db38899d6f885d5 (patch)
tree2d56935fc505c58f17dc66f480a19465531ab139 /vcl
parent56eb50de018ac806f92e2dd76c698d54edfe6122 (diff)
fix uninitialized memory in Skia
SkRect is actually a struct without a ctor, so it's not initialized. Change-Id: Icd8fe46230502a1f7aaf7c766a251b3d27070f66 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87764 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/skia/gdiimpl.cxx9
1 files changed, 7 insertions, 2 deletions
diff --git a/vcl/skia/gdiimpl.cxx b/vcl/skia/gdiimpl.cxx
index 66086c9af82b..7ec10165f5d0 100644
--- a/vcl/skia/gdiimpl.cxx
+++ b/vcl/skia/gdiimpl.cxx
@@ -310,7 +310,7 @@ void SkiaSalGraphicsImpl::DeInit() { destroySurface(); }
void SkiaSalGraphicsImpl::preDraw()
{
checkSurface();
- assert(mXorExtents.isEmpty()); // must be reset in postDraw()
+ assert(!mXorMode || mXorExtents.isEmpty()); // must be reset in postDraw()
}
void SkiaSalGraphicsImpl::postDraw()
@@ -476,7 +476,12 @@ void SkiaSalGraphicsImpl::SetFillColor() { mFillColor = SALCOLOR_NONE; }
void SkiaSalGraphicsImpl::SetFillColor(Color nColor) { mFillColor = nColor; }
-void SkiaSalGraphicsImpl::SetXORMode(bool set, bool) { mXorMode = set; }
+void SkiaSalGraphicsImpl::SetXORMode(bool set, bool)
+{
+ mXorMode = set;
+ if (mXorMode)
+ mXorExtents.setEmpty();
+}
SkCanvas* SkiaSalGraphicsImpl::getXorCanvas()
{