New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 767834 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 1
Type: Bug-Regression

Blocked on:
issue skia:7352



Sign in to add a comment

Unexpected drawings on canvas

Reported by m.st...@slemma.com, Sep 22 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.91 Safari/537.36

Example URL:
https://jsfiddle.net/q9uxjdwm/1/

Steps to reproduce the problem:
Just open URL

What is the expected behavior?
No unexpected drawings

What went wrong?
Some strange lines drawn

Does it occur on multiple sites: N/A

Is it a problem with a plugin? No 

Did this work before? Yes <55

Does this work in other browsers? Yes

Chrome version: 61.0.3163.91  Channel: stable
OS Version: Ubuntu on kernel 4.10.0-33-generic
Flash Version:
 
Labels: Needs-Milestone Needs-Bisect

Comment 2 by hdodda@chromium.org, Sep 27 2017

Cc: hdodda@chromium.org
Labels: -Pri-2 -Type-Compat -Needs-Bisect hasbisect OS-Mac OS-Windows Pri-1 Type-Bug-Regression
Status: Untriaged (was: Unconfirmed)
Able to reproduce the issue on windows 7 , mac os 10.12.6 and ubuntu 14.04 uisng chrome M61 #61.0.3163.100 and M63 #63.0.3223.8 .

This is a regression issue broken in M60.

Using the bisect providing the bisect results,
Good build: 60.0.3094.0(Revision: 470111).
Bad build:60.0.3095.0 (Revision: 470437).

You are probably looking for a change made after 470313 (known good), but no later than 470324 (first known bad).

CHANGELOG URL:
  
https://chromium.googlesource.com/chromium/src/+log/1073d1c2e24a31bc6c34bbc6a6c198ae5d668086..175ceeff6a099a7923928ba8fcd58c6b80563251

@Unable to find correct suspect from above cl , could somoone help us in assiging it to the concern owner.

Thanks!
Components: Blink>Canvas
Components: -Blink>Canvas Internals>Skia
Almost certainly due to something in the Skia roll. But not clear what.

https://chromium.googlesource.com/chromium/src/+/175ceeff6a099a7923928ba8fcd58c6b80563251

Comment 5 by hcm@chromium.org, Nov 28 2017

Cc: hcm@chromium.org
Owner: caryclark@google.com
Nice repro, still happens upon disabling GPU rasterization. Unsure about the bisect- I don't see a clear culprit... to Cary in case he has ideas.

Comment 6 by hcm@chromium.org, Nov 28 2017

Status: Assigned (was: Untriaged)
I started by reducing the test case to these two contours; the first one draws correctly, the second incorrectly:

ctx.beginPath();
ctx.moveTo(188.25074901590185,67.97775623009694);
ctx.lineTo(163.24524141968098,28.181718866367618);
ctx.arc(209,101,86,4.151390292243654,4.15799027681002);
ctx.lineTo(188.4691456477831,67.84153170654506);
ctx.arc(209,101,39,4.15799027681002,4.151390292243654,true);
ctx.closePath();
ctx.fillStyle = "rgba(102, 187, 106, 1)";
ctx.fill();

ctx.beginPath();
ctx.moveTo(188.4691456477831,67.84153170654506);
ctx.lineTo(163.72683399254737,27.88132632725319);
ctx.arc(209,101,86,4.15799027681002,4.164590261376386);
ctx.lineTo(188.688436596251,67.70675155387381);
ctx.arc(209,101,39,4.164590261376386,4.15799027681002,true);
ctx.closePath();
ctx.fillStyle = "rgba(171, 71, 188, 1)";
ctx.fill();

I spent a while trying to repro in Skia, but didn't have any luck.
Here's the fiddle that attempts to isolate the bug:

  https://fiddle.skia.org/c/cdf9b2298f30c10325132dfb18eef053

Don't know if there's a way to dump the path in HTML Canvas; that would be ideal.
Cc: fmalita@chromium.org
Here's a complete fiddle that reproduces the entire example. Unfortunately, it doesn't show the bug either.  https://fiddle.skia.org/c/@bug767834

Copying Florin on this in case he can spot something in the Skia mock that doesn't accurately represent what HTML canvas is doing to draw this.
Blockedon: skia:7352
Isolated the bug, tracking it here: bug.skia.org/7352
Owner: senorblanco@chromium.org
Status: Fixed (was: Assigned)

Sign in to add a comment