Bug 208812

Summary: Creating paths that are single-segment bezier or quad curves should not require a CGPath allocation
Product: WebKit Reporter: Wenson Hsieh <wenson_hsieh>
Component: WebCore Misc.Assignee: Wenson Hsieh <wenson_hsieh>
Status: RESOLVED FIXED    
Severity: Normal CC: bdakin, commit-queue, darin, sabouhallawa, simon.fraser, thorton, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Wenson Hsieh 2020-03-09 08:09:49 PDT
Fold simple bezier and quad curves into inline path data as well.
Comment 1 Wenson Hsieh 2020-03-09 08:41:16 PDT
Created attachment 393037 [details]
Patch
Comment 2 WebKit Commit Bot 2020-03-09 12:55:59 PDT
Comment on attachment 393037 [details]
Patch

Clearing flags on attachment: 393037

Committed r258151: <https://trac.webkit.org/changeset/258151>
Comment 3 WebKit Commit Bot 2020-03-09 12:56:00 PDT
All reviewed patches have been landed.  Closing bug.
Comment 4 Radar WebKit Bug Importer 2020-03-09 12:56:21 PDT
<rdar://problem/60238005>
Comment 5 Darin Adler 2020-03-09 13:57:52 PDT
Comment on attachment 393037 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=393037&action=review

> Source/WebCore/platform/graphics/Path.cpp:273
> +    if (hasInlineData<LineData>() || hasInlineData<BezierCurveData>() || hasInlineData<QuadCurveData>())

Eventually we will get to the point where a single switchOn is more efficient than these multiple calls.