[Libreoffice-commits] core.git: vcl/quartz
Julien Nabet
serval2412 at yahoo.fr
Fri Sep 23 16:22:48 UTC 2016
vcl/quartz/salgdicommon.cxx | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
New commits:
commit 5333743d3b8288fb40e4657aedf1db2255f6a62b
Author: Julien Nabet <serval2412 at yahoo.fr>
Date: Thu Sep 22 20:26:25 2016 +0200
tdf#100994: use CGContextStrokePath instead
This is a blind fix attempt to fix "Freeze when first action after launch with OSX Sierra with iMac 5K"
I started from bt:
frame #9: 0x00007fffbe094cf6 CoreGraphics`CGContextDrawPath + 183
frame #10: 0x0000000102b16cda libvcllo.dylib`AquaSalGraphics::drawPolyLine(unsigned int, SalPoint const*) + 330
frame #11: 0x0000000102929039 libvcllo.dylib`OutputDevice::drawPolyLine(tools::Polygon const&, LineInfo const&) + 361
frame #12: 0x0000000102928d30 libvcllo.dylib`OutputDevice::DrawPolyLine(basegfx::B2DPolygon const&, double, basegfx::B2DLineJoin, com::sun::star::drawing::LineCap, double) + 768
(see https://bug-attachments.documentfoundation.org/attachment.cgi?id=127502)
then:
http://stackoverflow.com/questions/32871234/how-to-make-kcgpathstroke-work-in-swift-2
which advises to replace:
CGContextDrawPath(ctx, kCGPathStroke)
by
CGContextDrawPath(ctx, .Stroke)
and finally this:
http://stackoverflow.com/questions/37838578/how-to-stroke-a-cgpath
which advises to directly use this:
CGContextStrokePath(context)
Change-Id: I99f9800c39f18d16488f7ef4114a71722f9b8123
Reviewed-on: https://gerrit.libreoffice.org/29194
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/vcl/quartz/salgdicommon.cxx b/vcl/quartz/salgdicommon.cxx
index aae7eff..ed6e4db 100644
--- a/vcl/quartz/salgdicommon.cxx
+++ b/vcl/quartz/salgdicommon.cxx
@@ -1439,8 +1439,8 @@ void AquaSalGraphics::drawPolyLine( sal_uInt32 nPoints, const SalPoint *pPtAry )
SAL_INFO( "vcl.cg", "CGContextAddLineToPoint(" << mrContext << "," << fX << "," << fY << ")" );
CGContextAddLineToPoint( mrContext, fX, fY );
}
- SAL_INFO( "vcl.cg", "CGContextDrawPath(" << mrContext << ",kCGPathStroke)" );
- CGContextDrawPath( mrContext, kCGPathStroke );
+ SAL_INFO( "vcl.cg", "CGContextStrokePath(" << mrContext << ")" );
+ CGContextStrokePath(mrContext);
RefreshRect( nX, nY, nWidth, nHeight );
More information about the Libreoffice-commits
mailing list