Closed Bug 944704 Opened 6 years ago Closed 6 years ago

SVG stroke-dashoffset & stroket-dasharray is reversed on circle/ellipse elements

Categories

(Core :: SVG, defect)

25 Branch
x86
macOS
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla29

People

(Reporter: tifftafftoff, Assigned: jwatt)

References

Details

(Keywords: regression)

Attachments

(6 files, 1 obsolete file)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36 OPR/18.0.1284.49

Steps to reproduce:

Go to :
http://dabblet.com/gist/7706640


Actual results:

The combination of dasharray and dashoffset produce an arc starting from the top and continuing to the left of the circle/ellipse


Expected results:

The combination of dasharray and dashoffset should produce an arc starting from the top and continuing to the right of the circle/ellipse.

IE9 to 11, Safari, Chrome and Opera are rendering this way.
Component: Untriaged → SVG
Product: Firefox → Core
Seems to be a HWA issue. Turning HWA off and restarting fixes it.

Bas, do you know what's going on?
Flags: needinfo?(bas)
According to the SVG specification "The arc of a ‘circle’ element begins at the "3 o'clock" point on the radius and progresses towards the "9 o'clock" point. (same text for an ellipse).
Status: UNCONFIRMED → NEW
Ever confirmed: true
(In reply to Robert Longson from comment #1)
> Seems to be a HWA issue. Turning HWA off and restarting fixes it.
> 
> Bas, do you know what's going on?

Looks like our arc is sweeping the wrong way. I'll be on PTO from tomorrow on though for 7 days. Although this shouldn't be very hard to fix.
Flags: needinfo?(bas)
It seems like non-HWA used to work but became broken with the switch to RoundedRectangle ellipses.
Blocks: 929001
Keywords: regression
I have some WIP patches I should finish off to fix this.
Assignee: nobody → jwatt
part 3 obviously doesn't fix the issue for SVGEllipseElement::ConstructPath if the gfxContext is Thebes backed. We don't use Thebes backed contexts for most drawing now though, and I don't much care to try and fix Thebes given we're hopefully going to get rid of the last Thebes backed contexts for SVG for v29.
Attachment #8346750 - Flags: review?(bas) → review+
Attachment #8346751 - Flags: review?(bas) → review+
Attachment #8346752 - Flags: review?(bas) → review+
I'm seeing non-OS X failures on Try to do with the circle tests failing. I split part 3 into two parts. Part 3 that I pushed just contains the ellipse fixes. Part 4 which I will investigate and push once it's working will fix circle.

https://hg.mozilla.org/integration/mozilla-inbound/rev/15e0c5ced155
https://hg.mozilla.org/integration/mozilla-inbound/rev/756ce0d34c9f
https://hg.mozilla.org/integration/mozilla-inbound/rev/53ddb97448dc
Whiteboard: [leave open]
Try push demonstrating that the circle part of the test fails on OS X only:

https://tbpl.mozilla.org/?tree=Try&rev=19678c32c6d6

Try push showing that the PathBuilderCG::Arc fix makes the circle part of the test pass, and passes all other tests:

https://tbpl.mozilla.org/?tree=Try&rev=e310044fd6ab
Attachment #8347371 - Flags: review?(bas) → review+
https://hg.mozilla.org/mozilla-central/rev/ab057ed707f6
https://hg.mozilla.org/mozilla-central/rev/057d71e9082e
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla29
Duplicate of this bug: 329838
You need to log in before you can comment on or make changes to this bug.