Bug 107118

Summary: Bad rendering of quadratic curves with same endpoints
Product: WebKit Reporter: youenn fablet <youennf>
Component: CanvasAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: kbr, krit
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 105650    
Bug Blocks:    
Description Flags
archive containing different tests
You should see a yellow line none

Description youenn fablet 2013-01-17 05:06:50 PST
Created attachment 183169 [details]
archive containing different tests

Some webkit back-end graphic libraries (cairo, qt...) seem to render incorrectly quadratic curves with same endpoints.

The canvas-quadratic-same-endpoint.html file in attachment highlights this at least with WebKitEFL (cairo 1.12.8) and WebKitQt (Qt5.0.0-r40), once the patch for https://bugs.webkit.org/show_bug.cgi?id=105650 is applied.
This test is passing on Firefox and Opera.

For WebKitQt, the line is drawn but the shape is not correct when the lineWidth is set to a large value.
This may be related to https://bugreports.qt-project.org/browse/QTBUG-27921

For WebKitEFL, a shape (similar to a point) is drawn but the curve itself (a line here) is not. 
This seems to happen with cairo 1.12.8 but not with some 1.10.x versions.

For Mac, the EWS buildbot marks the test as failed.

In attachment, the archive contains a set of files that illustrates the issue:
- canvas-quadratic-same-endpoint.html (to be placed in the LayoutTests/fast/canvas folder)
- cairo_test folder: direct cairo test that shows the issue with cairo 1.12.8
- qt_test folder: direct Qt test that shows the issue with Qt5.0.0-r40
Comment 1 youenn fablet 2013-02-04 02:04:50 PST
Latest version of cairo 1.12.10 seems to solve the issue.
This should close this bug for the EFL port.
Comment 2 Dirk Schulze 2014-04-05 08:08:39 PDT
Firfox and Safari don't render this. It seems to be a bug in CG for Safari. Not sure why it does not render in Firefox. IE and Chrome render it the same.
Comment 3 Dirk Schulze 2014-04-05 08:11:35 PDT
Created attachment 228675 [details]
You should see a yellow line