Bug 66762 - Canvas stroke and strokeRect with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
Summary: Canvas stroke and strokeRect with SourceIn, DestinationIn, SourceOut, Destina...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Canvas (show other bugs)
Version: 528+ (Nightly build)
Hardware: All Unspecified
: P2 Normal
Assignee: Dirk Schulze
URL:
Keywords:
: 81528 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-08-23 04:27 PDT by Ben Wells
Modified: 2014-04-05 12:57 PDT (History)
12 users (show)

See Also:


Attachments
Test case (3.55 KB, text/html)
2011-08-23 04:27 PDT, Ben Wells
no flags Details
Patch (37.81 KB, patch)
2014-04-05 04:56 PDT, Dirk Schulze
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Wells 2011-08-23 04:27:43 PDT
Created attachment 104816 [details]
Test case

These have the same errors as were recently fixed in bug 66036.
Comment 1 Jim Allanson 2012-03-27 01:37:02 PDT
*** Bug 81528 has been marked as a duplicate of this bug. ***
Comment 2 Dirk Schulze 2014-04-04 13:32:25 PDT
Rik, could you check this as well? Blink and WebKit are compatible are different to Firefox.
Comment 3 Dirk Schulze 2014-04-04 22:26:08 PDT
(In reply to comment #2)
> Rik, could you check this as well? Blink and WebKit are compatible are different to Firefox.

Ok, the results are incorrect. For fill we draw into an image buffer and then composite this image buffer with the context. Even though I hope that we can improve the performance with creating a transparency layer, we probably should do something similar here and for bug 66766.
Comment 4 Dirk Schulze 2014-04-05 00:49:32 PDT
(In reply to comment #3)
> (In reply to comment #2)
> > Rik, could you check this as well? Blink and WebKit are compatible are different to Firefox.
> 
> Ok, the results are incorrect. For fill we draw into an image buffer and then composite this image buffer with the context. Even though I hope that we can improve the performance with creating a transparency layer, we probably should do something similar here and for bug 66766.

Have a fix. Am writing test cases now.
Comment 5 Dirk Schulze 2014-04-05 04:56:10 PDT
Created attachment 228667 [details]
Patch
Comment 6 Andreas Kling 2014-04-05 12:54:14 PDT
Comment on attachment 228667 [details]
Patch

r=me

>This makes WebKit's behavior interoperable with Firefox and IE as well.

Very nice!
Comment 7 WebKit Commit Bot 2014-04-05 12:57:30 PDT
Comment on attachment 228667 [details]
Patch

Clearing flags on attachment: 228667

Committed r166836: <http://trac.webkit.org/changeset/166836>
Comment 8 WebKit Commit Bot 2014-04-05 12:57:35 PDT
All reviewed patches have been landed.  Closing bug.