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

Issue 759180 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Aug 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

[WebGL] uploading a visible webgl canvas to a single channel texture -> bad content

Project Member Reported by junov@chromium.org, Aug 25 2017

Issue description

Apply the attached patch to WebGL conformance tests and notice the failures.  Run the tests, see the failures.

This is because for the R* internal formats, the implementation is taking the front buffer instead of the back buffer.
 
conformace_test_tweak.patch
755 bytes Download

Comment 1 by junov@chromium.org, Aug 25 2017

Summary: [WebGL] uploading a visible webgl canvas to a single channel texture -> bad content (was: [WebGL] uploading a webgl canvas to a single channel texture -> bad content)
not just single channel texture formats. rgb565 is also affected.

Comment 2 by kbr@chromium.org, Aug 25 2017

The tests verify all different types of texture formats; why would only some formats be taking the front rather than the back buffer? Do you have a pointer to the suspect code?

Comment 3 by zmo@chromium.org, Aug 25 2017

It's because with certain formats we go down GPU-GPU copy path and with other formats we go down readback path.
Project Member

Comment 4 by bugdroid1@chromium.org, Aug 28 2017

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

commit a1f167e49c15f7ca5a79b0c51aeac5b87eb45a92
Author: Justin Novosad <junov@chromium.org>
Date: Mon Aug 28 20:01:05 2017

Fix Webgl texImage* reading from wrong buffer

When the source image for a texImage* call is a WebGL canvas,
it is important to read from the back buffer rather than the front
buffer. Otherwise we end up uploading stale content.  This bug only
affected specific texture formats for texImage2D.

BUG= 759180 

Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I56ea96c7ee512eb11525f7c968b15bc95cf70f59
Reviewed-on: https://chromium-review.googlesource.com/636349
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Justin Novosad <junov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#497855}
[modify] https://crrev.com/a1f167e49c15f7ca5a79b0c51aeac5b87eb45a92/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp

Comment 5 by junov@chromium.org, Aug 28 2017

Status: Fixed (was: Assigned)
Project Member

Comment 6 by bugdroid1@chromium.org, Aug 30 2017

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

commit 3241713daaab793054c46061d7dcf1d37ee0cd54
Author: Justin Novosad <junov@chromium.org>
Date: Wed Aug 30 21:42:17 2017

Removing obsolete comment in WebGLRenderingContextBase

BUG= 759180 
TBR=kbr@chromium.org

Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Ic0e4c2b81ea7883f9c1be05c97e909eed5df5244
Reviewed-on: https://chromium-review.googlesource.com/644115
Commit-Queue: Justin Novosad <junov@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Justin Novosad <junov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#498621}
[modify] https://crrev.com/3241713daaab793054c46061d7dcf1d37ee0cd54/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp

Sign in to add a comment