summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2022-05-01 15:58:22 +0100
committerCaolán McNamara <caolanm@redhat.com>2022-05-02 18:37:33 +0200
commit00e43c14558fa4d0369820fa3d2cd7b987e61377 (patch)
tree91bf49e2d62bd4316437d0977ca9656c5573e9fa /vcl
parent8e08e6c0ce6a7e5190cd9db7dc76e9774e9bb5a8 (diff)
Related: tdf#148433 experiment with CAIRO_OPERATOR_EXCLUSION
export SAL_DISABLE_CAIRO_DIFFERENCE=1 to experiment with this Change-Id: If0e5fee8c71ae3d2181b1e0b90bf9ecd6536ffc0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133671 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/headless/CairoCommon.cxx7
1 files changed, 4 insertions, 3 deletions
diff --git a/vcl/headless/CairoCommon.cxx b/vcl/headless/CairoCommon.cxx
index 02c281fea3cb..7cf2951b9da6 100644
--- a/vcl/headless/CairoCommon.cxx
+++ b/vcl/headless/CairoCommon.cxx
@@ -966,6 +966,7 @@ bool bDisableDifference(nullptr != pDisableDifference);
#if defined CAIRO_VERSION && CAIRO_VERSION < CAIRO_VERSION_ENCODE(1, 10, 0)
#define CAIRO_OPERATOR_DIFFERENCE (static_cast<cairo_operator_t>(23))
+#define CAIRO_OPERATOR_EXCLUSION (static_cast<cairo_operator_t>(24))
#endif
void CairoCommon::invert(const basegfx::B2DPolygon& rPoly, SalInvert nFlags, bool bAntiAlias)
@@ -980,13 +981,13 @@ void CairoCommon::invert(const basegfx::B2DPolygon& rPoly, SalInvert nFlags, boo
cairo_set_source_rgb(cr, 1.0, 1.0, 1.0);
- if (cairo_version() >= CAIRO_VERSION_ENCODE(1, 10, 0) && !bDisableDifference)
+ if (bDisableDifference)
{
- cairo_set_operator(cr, CAIRO_OPERATOR_DIFFERENCE);
+ cairo_set_operator(cr, CAIRO_OPERATOR_EXCLUSION);
}
else
{
- SAL_WARN("vcl.gdi", "SvpSalGraphics::invert, archaic cairo");
+ cairo_set_operator(cr, CAIRO_OPERATOR_DIFFERENCE);
}
if (nFlags & SalInvert::TrackFrame)