[Webkit-unassigned] [Bug 61560] Canvas performance regression with `clip`
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Sat Jun 4 06:24:55 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=61560
--- Comment #4 from Jarred Nicholls <jarred at sencha.com> 2011-06-04 06:24:55 PST ---
The clipping path intersection is not being detected by CGContextClip nor CGContextEOClip it would seem. Surrounding the CG clip w/ save/restore graphics state certainly does fix the issue. Bug in CG?
GraphicsContextCG.cpp
@@ -1095,13 +1095,15 @@ void GraphicsContext::clip(const Path& path)
// CGContextClip does nothing if the path is empty, so in this case, we
// instead clip against a zero rect to reduce the clipping region to
// nothing - which is the intended behavior of clip() if the path is empty.
if (path.isEmpty())
CGContextClipToRect(context, CGRectZero);
else {
+ CGContextSaveGState(context);
CGContextBeginPath(context);
CGContextAddPath(context, path.platformPath());
CGContextClip(context);
+ CGContextRestoreGState(context);
}
m_data->clip(path);
}
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list