Closed
Bug 932500
Opened 11 years ago
Closed 11 years ago
PathD2D::TransformedCopyToBuilder ignores even odd fill
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
mozilla28
People
(Reporter: cabanier, Assigned: cabanier)
References
Details
Attachments
(1 file, 1 obsolete file)
934 bytes,
patch
|
Details | Diff | Splinter Review |
I noticed that TransformedCopyToBuilder with even odd winding returns a path that is still using nzo winding.
This looks like a small oversight in the TransformedCopyToBuilder function.
Assignee | ||
Comment 1•11 years ago
|
||
Assignee: nobody → cabanier
Assignee | ||
Comment 2•11 years ago
|
||
Assignee | ||
Updated•11 years ago
|
Attachment #824268 -
Flags: review?(bas)
Assignee | ||
Updated•11 years ago
|
OS: Mac OS X → Windows 7
Assignee | ||
Updated•11 years ago
|
Attachment #824268 -
Flags: review?(bas) → review?(jmuizelaar)
Comment 3•11 years ago
|
||
Comment on attachment 824268 [details] [diff] [review]
Add case for even odd winding
Review of attachment 824268 [details] [diff] [review]:
-----------------------------------------------------------------
The default is ALTERNATE. Does this patch have a behaviour change?
Assignee | ||
Comment 4•11 years ago
|
||
(In reply to Jeff Muizelaar [:jrmuizel] from comment #3)
> Comment on attachment 824268 [details] [diff] [review]
> Add case for even odd winding
>
> Review of attachment 824268 [details] [diff] [review]:
> -----------------------------------------------------------------
>
> The default is ALTERNATE. Does this patch have a behaviour change?
Well, it fixes when you go from D2D1_FILL_MODE_ALTERNATE to D2D1_FILL_MODE_WINDING which was ignored before.
I could add an assert that checks if the result of TransformedCopyToBuilder doesn't give the correct winding back.
Updated•11 years ago
|
Attachment #824268 -
Flags: review?(jmuizelaar) → review?(bas)
Comment 5•11 years ago
|
||
Comment on attachment 824268 [details] [diff] [review]
Add case for even odd winding
Review of attachment 824268 [details] [diff] [review]:
-----------------------------------------------------------------
::: gfx/2d/PathD2D.cpp
@@ +268,5 @@
>
> if (aFillRule == FILL_WINDING) {
> sink->SetFillMode(D2D1_FILL_MODE_WINDING);
> + } else {
> + sink->SetFillMode(D2D1_FILL_MODE_ALTERNATE);
This is unneeded as ALTERNATE is the default for a new sink. We should probably just remove this line.
@@ +282,5 @@
> D2DMatrix(aTransform),
> sink);
> }
>
> + RefPtr<PathBuilderD2D> pathBuilder = new PathBuilderD2D(sink, path, aFillRule);
Good catch.
Attachment #824268 -
Flags: review?(bas) → review+
Assignee | ||
Comment 6•11 years ago
|
||
Attachment #824268 -
Attachment is obsolete: true
Assignee | ||
Updated•11 years ago
|
Keywords: checkin-needed
Comment 7•11 years ago
|
||
Keywords: checkin-needed
Comment 8•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla28
You need to log in
before you can comment on or make changes to this bug.
Description
•