JS Flot bug with Firefox 44.0.2

RESOLVED FIXED

Status

()

Core
Graphics
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: moffatjd, Unassigned)

Tracking

({regression})

44 Branch
Unspecified
Mac OS X
regression
Points:
---

Firefox Tracking Flags

(firefox44 wontfix, firefox45- wontfix, firefox46 fixed, firefox-esr38 unaffected)

Details

Attachments

(1 attachment)

(Reporter)

Description

2 years ago
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:44.0) Gecko/20100101 Firefox/44.0
Build ID: 20160210153822

Steps to reproduce:

When I updated to 44.0.2, my javascript plotting using JS Flot stopped working as expected.

I reverted to Firefox 43.0.4 and the problem is not there.

I updated back to 44.0.2 and the problem returns.


Actual results:

See the following jsfiddle:

http://jsfiddle.net/moffatjd/4c6f6h4w/2/

There should be no shading.


Expected results:

Both Safari, Chrome, and Firefox 43.0.4 all behave as expected (no shading). But 44.0.2 seems to have broken the functionality and the shading appears. Note, I that I don't think it was broken in 44.0.1. It was very recent. 

I know this may seem like a small bug, but it's a big deal to me, and I'm guessing that it might be indicative of some other underlying javascript functionality. Perhaps this will shed some light.
it's already fixed in firefox 46, but firefox 44 and 45 are affected.

Regression range (probably bug 1150944):
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=e5746165c704a82fc92d059ef9303562d6b3c886&tochange=5ed72fdd632767e03d6862efd10fc15a34256845

and fixed by bug 1082598:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=d8e260e1535f0ff3877b21d6846380dedf449453&tochange=6630a176477ef903dcf3057db755abc43ba5018d
status-firefox44: --- → affected
status-firefox45: --- → affected
status-firefox46: --- → fixed
status-firefox-esr38: --- → unaffected
Component: Untriaged → Graphics
Keywords: regression
OS: Unspecified → Mac OS X
Product: Firefox → Core
See Also: → bug 1082598, bug 1150944
Created attachment 8719696 [details]
Reduced testcase for wrong filling

Here's a reduced testcase.

ctx.fillStyle = "red";
ctx.beginPath();
ctx.moveTo(0, 0);
ctx.lineTo(0, 30);
ctx.lineTo(30, 30);
ctx.lineTo(30, 30);
ctx.lineTo(0, 30);
ctx.fill();

In Firefox 44.0.2 on OSX, it fills tetragon (0, 0), (0, 30), (30, 30), (10, 20).
This happens only when gfx.canvas.azure.accelerated=true.

mattwoodrow, can this be fixed somehow?
(turning off Skia or backport bug 1082598 or something...?)
We only have a few weeks left until Firefox 45 ships, I'm not sure we can do much at this point unfortunately.

Uplifting a skia update is terrifying, the only option would be to disable skia-gl.
tracking-firefox45: --- → ?

Updated

2 years ago
See Also: → bug 1248398
I agree with Matt's risk assessment in comment 3. I might be more inclined to accept it if this was a stability or security problem but it's not. In the meantime anyone experiencing this issue (assuming it's mostly developers) can switch to Developer Edition.
Status: UNCONFIRMED → NEW
Ever confirmed: true
(Reporter)

Comment 5

2 years ago
Thanks all. I know little about your risk assessment, but I empathize. This specific problem does impact users (and not just developers), but we can come up with a temporary workaround until 46 ships. Thanks again.
We are going to let it ride the train from 46 then...
Status: NEW → RESOLVED
Last Resolved: 2 years ago
status-firefox44: affected → wontfix
status-firefox45: affected → wontfix
tracking-firefox45: ? → -
Resolution: --- → FIXED
(In reply to Sylvestre Ledru [:sylvestre] from comment #6)
> We are going to let it ride the train from 46 then...

I did do some investigation of this, but the amount of changes to the way Skia handles paths internally were too significant to isolate any easy fix. So I am in agreement in just letting this one slip until 46 comes along.

Updated

2 years ago
Duplicate of this bug: 1255466
You need to log in before you can comment on or make changes to this bug.