summaryrefslogtreecommitdiff
path: root/vcl/headless
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2019-07-09 10:36:11 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2019-07-09 11:34:31 +0200
commita9de047403ccc2fa4f3b924c5e22a273c4081174 (patch)
treed026261b57d99094ba777e9506edd860ea6bb134 /vcl/headless
parenta7fb765e44696d307c789b146cd851a8474283dc (diff)
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 <noel.grandin@collabora.co.uk>
Diffstat (limited to 'vcl/headless')
-rw-r--r--vcl/headless/svpgdi.cxx3
1 files changed, 2 insertions, 1 deletions
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)