WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED DUPLICATE of
bug 218580
217829
[Cairo] REGRESSION(
r268176
): media/video-orientation-canvas.html is failing
https://bugs.webkit.org/show_bug.cgi?id=217829
Summary
[Cairo] REGRESSION(r268176): media/video-orientation-canvas.html is failing
Diego Pino
Reported
2020-10-16 09:00:46 PDT
media/video-orientation-canvas.html [ Failure ] wk-testhunter reports test started failing in interval: [
r268176
-
r268179
]. I bisected the interval an
r268176
seems to be the cause for the test failure. Diff:
https://build.webkit.org/results/GTK-Linux-64-bit-Release-Tests/r268575%20(16457)/media/video-orientation-canvas-diff.txt
--- /home/buildbot/worker/gtk-linux-64-release-tests/build/layout-test-results/media/video-orientation-canvas-expected.txt +++ /home/buildbot/worker/gtk-linux-64-release-tests/build/layout-test-results/media/video-orientation-canvas-actual.txt @@ -1,6 +1,6 @@ -EXPECTED (context.getImageData(88, 115, 1, 1).data == [208,0,0,255] with tolerance 5 OK +EXPECTED (context.getImageData(88, 115, 1, 1).data == [208,0,0,255] with tolerance 5, OBSERVED '[0,0,0,255]' FAIL EXPECTED (context.getImageData(237, 88, 1, 1).data == [208,0,0,255] with tolerance 5 OK -EXPECTED (context.getImageData(200, 237, 1, 1).data == [208,0,0,255] with tolerance 5 OK +EXPECTED (context.getImageData(200, 237, 1, 1).data == [208,0,0,255] with tolerance 5, OBSERVED '[0,0,0,255]' FAIL END OF TEST
Attachments
Example with tranposed video and transposed image drawn to canvas
(1.63 KB, text/html)
2020-10-26 21:58 PDT
,
Lauro Moura
no flags
Details
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2020-10-23 09:01:23 PDT
<
rdar://problem/70621171
>
Philippe Normand
Comment 2
2020-10-26 07:51:08 PDT
Setting didUseWidthAsHeight to false in CairoOperations.cpp line 919 makes the test pass again.
Lauro Moura
Comment 3
2020-10-26 21:58:08 PDT
Checking the (In reply to Philippe Normand from
comment #2
)
> Setting didUseWidthAsHeight to false in CairoOperations.cpp line 919 makes > the test pass again.
An initial investigation showed that Cairo::drawNativeImage somehow was invoked differently when the 90deg rotated video is drawn to the canvas in comparison to a 90deg image. For the image (subject of the original patch), both destination and source rect already arrived with the same orientation (same height and width), so the `ifs` check inside drawNativeImage transposed the destination rect to the expected orientation so drawSurface could scale/pad correctly. Now with video, the orientation information is there too (The source data is rotated 90deg) but the destination rect arrives already transposed. This causes the same if block to transpose again, leading to drawNativeSurface to scale/pad the video incorrectly. Next I'll check how the destination rects are provided to drawNativeImage.
Lauro Moura
Comment 4
2020-10-26 21:58:49 PDT
Created
attachment 412388
[details]
Example with tranposed video and transposed image drawn to canvas
Philippe Normand
Comment 5
2021-02-22 08:28:09 PST
*** This bug has been marked as a duplicate of
bug 218580
***
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug