summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2021-04-09 13:58:28 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-04-09 17:11:40 +0200
commitf3c40912bb2731a0ec1d02357bd6375c875630b6 (patch)
treed539793f9995cc4b1756b826a1ade6cd72795c2d
parenttdf#47349 sc ui: bPosVisible only for fully visible (diff)
downloadcore-f3c40912bb2731a0ec1d02357bd6375c875630b6.tar.gz
core-f3c40912bb2731a0ec1d02357bd6375c875630b6.zip
fix small cairo leak in gen backend
Change-Id: I57b8cd00d252cef2699d499b9080f829be9098da Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113847 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 9940630266686d306fc2bc0ac3c20231f7f3d532) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113855 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r--vcl/headless/svpgdi.cxx5
1 files changed, 3 insertions, 2 deletions
diff --git a/vcl/headless/svpgdi.cxx b/vcl/headless/svpgdi.cxx
index afcb9956c2cf..1f62de43c3b6 100644
--- a/vcl/headless/svpgdi.cxx
+++ b/vcl/headless/svpgdi.cxx
@@ -1670,6 +1670,7 @@ bool SvpSalGraphics::drawGradient(const tools::PolyPolygon& rPolyPolygon, const
1.0);
cairo_set_source(cr, pattern);
+ cairo_pattern_destroy(pattern);
basegfx::B2DRange extents = getClippedFillDamage(cr);
cairo_fill_preserve(cr);
@@ -1689,8 +1690,7 @@ bool SvpSalGraphics::implDrawGradient(basegfx::B2DPolyPolygon const & rPolyPolyg
for (auto const & rPolygon : rPolyPolygon)
AddPolygonToPath(cr, rPolygon, rObjectToDevice, !getAntiAliasB2DDraw(), false);
- cairo_pattern_t* pattern;
- pattern = cairo_pattern_create_linear(rGradient.maPoint1.getX(), rGradient.maPoint1.getY(), rGradient.maPoint2.getX(), rGradient.maPoint2.getY());
+ cairo_pattern_t* pattern = cairo_pattern_create_linear(rGradient.maPoint1.getX(), rGradient.maPoint1.getY(), rGradient.maPoint2.getX(), rGradient.maPoint2.getY());
for (SalGradientStop const & rStop : rGradient.maStops)
{
@@ -1703,6 +1703,7 @@ bool SvpSalGraphics::implDrawGradient(basegfx::B2DPolyPolygon const & rPolyPolyg
cairo_pattern_add_color_stop_rgba(pattern, offset, r, g, b, a);
}
cairo_set_source(cr, pattern);
+ cairo_pattern_destroy(pattern);
basegfx::B2DRange extents = getClippedFillDamage(cr);
cairo_fill_preserve(cr);