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

Issue 640176 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jul 9
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 2
Type: Bug-Regression

Blocked on:
issue skia:5669



Sign in to add a comment

canvas fill doesn't work properly for arc

Reported by harry75...@gmail.com, Aug 23 2016

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:48.0) Gecko/20100101 Firefox/48.0

Example URL:
https://jsfiddle.net/hf7Lb340/

Steps to reproduce the problem:
1. open https://jsfiddle.net/hf7Lb340/ 
2. 
3. 

What is the expected behavior?
a red fan

What went wrong?
the fan does not render correctly

Does it occur on multiple sites: N/A

Is it a problem with a plugin? N/A 

Did this work before? N/A 

Does this work in other browsers? Yes 

Chrome version: 52.0.2743.116  Channel: n/a
OS Version: OS X 10.10
Flash Version: Shockwave Flash 22.0 r0
 
屏幕快照 2016-08-23 19.48.17.png
11.0 KB View Download

Comment 1 by f...@opera.com, Aug 23 2016

Components: Blink>Canvas Internals>Skia
Could you please share the contents of about://gpu ?
Here it is.

BTW, same problem on my windows desktop pc with intel integrated video card.
gpu.htm
46.6 KB View Download
Labels: -Type-Compat M-54 hasbisect OS-Linux OS-Windows Type-Bug-Regression
Owner: reed@chromium.org
Status: Assigned (was: Unconfirmed)
Able to reproduce the issue on windows 7, Linux Ubuntu 14.04 and Mac 10.11.6 using chrome version 52.0.2743.116 and canary 54.0.2837.0.
This is regression issue broken in M46.Please find the bisect information as below

Narrow Bisect::
================
Good - 46.0.2455.0   ---  (build revision 338602)
Bad - 46.0.2456.0  ----  (build revision 338769)

CHANGELOG URL:
=====================  https://chromium.googlesource.com/chromium/src/+log/2ac8cb50a0c9d284b57db8f3de71a71d4a45c6e8..24a52b1fc00fd2ba8c67195be93282b5de3ba848

Blink Roll
============
https://chromium.googlesource.com/skia/+log/4abc186..e8c5666

Possible suspect from the above Blink CL
=================================
https://chromium.googlesource.com/skia/+/a5517e2b190a8083b38964972b031c13e99f1012

reed@ could you please look into this issue if it is related to your change,else please route this to an appropriate owner fro this issue.

Thanks,

Comment 4 by reed@google.com, Aug 24 2016

Cc: bsalo...@google.com caryclark@google.com
Cc: -caryclark@google.com reed@google.com
Owner: caryclark@google.com
I'm trying to repro in Skia, but haven't hit the magic numbers yet. The isolating failing numbers in the JS fiddle look like:

//   startAngle = -0.5235984, // works
     startAngle = -0.5235985, // fails
//   endAngle = -2.438e-4,  // works
     endAngle = -2.439e-4,  // fails

The Skia repro (that as of now does not fail is)

https://fiddle.skia.org/c/@issue640176

Comment 6 by bsalo...@google.com, Aug 24 2016

I was able to dump the path using SkPath::dump().

I get this:
path.moveTo(0, 0);
path.lineTo(103.923f, -60);
path.lineTo(103.923f, -60);
path.conicTo(120, -32.1539f, 120, 0, 0.965926f);

which also doesn't reproduce it after modifying Cary's fiddle.

Comment 7 by bsalo...@google.com, Aug 24 2016

I put some prints in our path rendering classes, this is being rendered as mask using the sw rasterizer and uploaded as a texture.

I'm guessing the convexicator change in the skia roll made this path report itself as non-convex.
I tried wiggling all of Brian's float values to see if a value close by would cause it to fail:

path.moveTo(0, 0); 
float linex = 103.923f + (-0.5f + rando.nextF()) * scale;
float liney = -60;
path.lineTo(linex, liney); 
path.lineTo(linex, liney); 
path.conicTo(120, -32.1539f + (-0.5f + rando.nextF()) * scale,
    120, 0, 0.965926f + (-0.5f + rando.nextF()) * 0.1f * scale); 

I haven't made a concave path in raster or GL, for larger or smaller scale factors.
Cc: robertphillips@chromium.org senorblanco@chromium.org caryclark@google.com
Owner: ----
The bug has been isolated in Skia, and is tracked here: bug.skia.org/5669
Project Member

Comment 10 by bugdroid1@chromium.org, Aug 24 2016

The following revision refers to this bug:
  https://skia.googlesource.com/skia.git/+/531191fefebb5bed6177946e2e227ddff292cff2

commit 531191fefebb5bed6177946e2e227ddff292cff2
Author: caryclark <caryclark@google.com>
Date: Wed Aug 24 18:59:30 2016

tiny line breaks gl render

This pie cut draws correctly
on raster but extends to the
right on Ganesh.

The path is not convex, and
has a tiny line that contributes
to the error.

TBR=robertphillips@google.com
BUG= 640176 
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2276083002

Review-Url: https://codereview.chromium.org/2276083002

[modify] https://crrev.com/531191fefebb5bed6177946e2e227ddff292cff2/gm/conicpaths.cpp

Project Member

Comment 11 by bugdroid1@chromium.org, Aug 24 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5005b3d5d481d6777ffeb1b41603843e9df50458

commit 5005b3d5d481d6777ffeb1b41603843e9df50458
Author: skia-deps-roller <skia-deps-roller@chromium.org>
Date: Wed Aug 24 22:52:40 2016

Roll src/third_party/skia/ 3bf7509c3..168261287 (17 commits).

https://chromium.googlesource.com/skia.git/+log/3bf7509c3f68..168261287136

$ git log 3bf7509c3..168261287 --date=short --no-merges --format='%ad %ae %s'
2016-08-24 caryclark mark fuzz test flaky since it may fail on some platforms
2016-08-24 halcanary gyp/sfntly: set SK_SFNTLY_SUBSETTER uniformly
2016-08-24 mtklein GN: guard tools (except fiddle) by skia_enable_tools.
2016-08-24 mtklein SkPngCodec: voidp instead of forward-declares for png.h types.
2016-08-24 ajuma Fix leak in GrTextureStripAtlasTest
2016-08-24 bungeman s/invertable/invertible
2016-08-24 caryclark tiny line breaks gl render
2016-08-24 fmalita Fix SkTLazy(const T*) initialization
2016-08-24 mtklein GN: Fuchsia probably cannot link without this.
2016-08-24 halcanary SkPDF: vector canvases can't hint!
2016-08-24 mtklein GN: more optional components: jpeg, pdf, png, xml
2016-08-24 caryclark remove point aliases
2016-08-24 halcanary SkPDF: vertical writing: draw nothing
2016-08-24 bungeman Add simple font fallback on Mac.
2016-08-24 ajuma Make GrTextureStripAtlas flush pending IO on newly acquired texture
2016-08-24 msarett Parse ICC profiles from webps
2016-08-24 egdaniel Add addtional resolve calls to vulkan backend

BUG= 637678 , 640176 , 637571 , 637678 

CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
TBR=bungeman@google.com

Review-Url: https://codereview.chromium.org/2274283002
Cr-Commit-Position: refs/heads/master@{#414184}

[modify] https://crrev.com/5005b3d5d481d6777ffeb1b41603843e9df50458/DEPS

Blockedon: skia:5669
Cc: kavvaru@chromium.org
Labels: Needs-Feedback
Tested the issue on windows 7, Linux Ubuntu 14.04 and Mac 10.11.6 using chrome version 54.0.2840.6.Still seeing the cut edge of the canvas at the top.
Please find the attached screen shot for the same.

Could any one please confirm about the fix?

Thanks,
640176.png
122 KB View Download
This issue has not been fixed. The blocking Skia bug hasn't been picked up. 
Labels: -Needs-Feedback
Owner: caryclark@chromium.org
Assigning back to Cary.
Owner: reed@google.com
reed is working on the skia fix
Still able to reproduce the issue on win-7, Mac-10.11.6 and Linux Ubuntu-14.04 using chrome stable version-55.0.2883.75 and canary 57.0.2944.0

reed@ Could you please look into this issue.


Thanks,

Comment 19 by reed@google.com, Dec 8 2016

Cc: fmalita@chromium.org

Comment 20 by fs...@chromium.org, Jun 29 2018

Components: -Blink>Canvas
Status: Fixed (was: Assigned)
no longer repros in skia or chrome

Sign in to add a comment