RESOLVED FIXED 78626
Incorrect results/offset image in CSS filters (non-composited path)
https://bugs.webkit.org/show_bug.cgi?id=78626
Summary Incorrect results/offset image in CSS filters (non-composited path)
Stephen White
Reported 2012-02-14 13:01:41 PST
In the non-composited path, when two or more filters are used in -webkit-filter, the results are often incorrect. See the attached test case.
Attachments
Test case (318 bytes, text/html)
2012-02-14 13:02 PST, Stephen White
no flags
Patch (18.28 KB, patch)
2012-02-14 14:54 PST, Stephen White
no flags
Patch (18.39 KB, patch)
2012-02-14 15:51 PST, Stephen White
no flags
Updated test (18.43 KB, patch)
2012-02-15 08:40 PST, Stephen White
no flags
Stephen White
Comment 1 2012-02-14 13:02:51 PST
Created attachment 127024 [details] Test case
Stephen White
Comment 2 2012-02-14 14:54:37 PST
Stephen White
Comment 3 2012-02-14 15:51:23 PST
Stephen White
Comment 4 2012-02-15 08:40:14 PST
Created attachment 127189 [details] Updated test
WebKit Review Bot
Comment 5 2012-02-15 08:42:12 PST
Attachment 127189 [details] did not pass style-queue: Failed to run "['Tools/Scripts/update-webkit']" exit_code: 2 Updating OpenSource git.webkit.org[0: 17.254.20.231]: errno=Connection refused fatal: unable to connect a socket (Connection refused) Died at Tools/Scripts/update-webkit line 162. If any of these errors are false positives, please file a bug against check-webkit-style.
Stephen White
Comment 6 2012-02-15 08:43:12 PST
(In reply to comment #4) > Created an attachment (id=127189) [details] > Updated test I realized that the layout test in the earlier patch was passing with or without the code change, I think due to the mouse position already being at 0,0 when the tests starts (so the initial draw is correct, even before the mouse pos change). This one at least fails on Chrome DRT without the code change, although it still passes on Mac DRT for unknown reasons. Apparently I still haven't quite got the hang of repaint tests.
Stephen White
Comment 7 2012-02-15 08:43:57 PST
(In reply to comment #5) > Attachment 127189 [details] did not pass style-queue: > > Failed to run "['Tools/Scripts/update-webkit']" exit_code: 2 > > Updating OpenSource > git.webkit.org[0: 17.254.20.231]: errno=Connection refused > fatal: unable to connect a socket (Connection refused) > Died at Tools/Scripts/update-webkit line 162. > > > If any of these errors are false positives, please file a bug against check-webkit-style. check-webkit-style passes locally; seems the bot is unhappy.
Darin Adler
Comment 8 2012-02-15 09:53:41 PST
Comment on attachment 127189 [details] Updated test View in context: https://bugs.webkit.org/attachment.cgi?id=127189&action=review > Source/WebCore/rendering/FilterEffectRenderer.cpp:332 > + for (size_t i = 0; i < m_effects.size(); ++i) { > + RefPtr<FilterEffect> effect = m_effects.at(i); > + effect->clearResult(); > + } I think this would read better without the local variable: for (size_t i = 0; i < m_effects.size(); ++i) m_effects[i]->clearResult();
Stephen White
Comment 9 2012-02-15 10:27:24 PST
Comment on attachment 127189 [details] Updated test View in context: https://bugs.webkit.org/attachment.cgi?id=127189&action=review >> Source/WebCore/rendering/FilterEffectRenderer.cpp:332 >> + } > > I think this would read better without the local variable: > > for (size_t i = 0; i < m_effects.size(); ++i) > m_effects[i]->clearResult(); Thanks; will make that change on landing.
Stephen White
Comment 10 2012-02-15 10:44:41 PST
Stephen White
Comment 11 2012-02-16 11:29:07 PST
Comment on attachment 127189 [details] Updated test All patches landed; removing r+ (I guess webkit-patch forgot).
Alexandru Chiculita
Comment 12 2012-03-05 11:54:51 PST
*** Bug 77623 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.