[Libreoffice-commits] core.git: vcl/headless

Noel Grandin (via logerrit) logerrit at kemper.freedesktop.org
Tue Jul 9 09:35:34 UTC 2019


 vcl/headless/svpgdi.cxx |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit a9de047403ccc2fa4f3b924c5e22a273c4081174
Author:     Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Tue Jul 9 10:36:11 2019 +0200
Commit:     Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Tue Jul 9 11:34:31 2019 +0200

    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 at collabora.co.uk>

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)


More information about the Libreoffice-commits mailing list