From a9de047403ccc2fa4f3b924c5e22a273c4081174 Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Tue, 9 Jul 2019 10:36:11 +0200 Subject: [PATCH] tdf#121793 use cairo_path_extents instead of cairo_fill_extents, which is fairly expensive for drawPolyPolygon fill operations. Shaves about 10% off the CPU time for this bug Change-Id: I04d04eed1bb204f51537f0856844b337c5a4d54c Reviewed-on: https://gerrit.libreoffice.org/75287 Tested-by: Jenkins Reviewed-by: Noel Grandin --- vcl/headless/svpgdi.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vcl/headless/svpgdi.cxx b/vcl/headless/svpgdi.cxx index b335d2ed630b..205c1153e02b 100644 --- a/vcl/headless/svpgdi.cxx +++ b/vcl/headless/svpgdi.cxx @@ -74,7 +74,8 @@ namespace { double x1, y1, x2, y2; - cairo_fill_extents(cr, &x1, &y1, &x2, &y2); + // this is faster than cairo_fill_extents, at the cost of some overdraw + cairo_path_extents(cr, &x1, &y1, &x2, &y2); // support B2DRange::isEmpty() if(0.0 != x1 || 0.0 != y1 || 0.0 != x2 || 0.0 != y2)