Closed Bug 1316546 Opened 8 years ago Closed 6 years ago

Failure on 2/conformance2/textures/misc/copy-texture-image.html

Categories

(Core :: Graphics: CanvasWebGL, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla53
Tracking Status
firefox53 --- fixed

People

(Reporter: cleu, Assigned: jgilbert)

References

Details

Attachments

(1 file, 6 obsolete files)

We have some exceptions caused by bad arguments not following the spec, we need to adjust out current checking mechanism in CopyTexImage2D https://www.khronos.org/registry/webgl/sdk/tests/conformance2/textures/misc/copy-texture-image.html?webglVersion=2&quiet=0
Assignee: nobody → cleu
Attachment #8809319 - Attachment description: WIP - fix conformance failure texture-image → Part1 - fix conformance failure texture-image about incorrect internal format checking order.
Fix indentation inconsistency.
Attachment #8809319 - Attachment is obsolete: true
Attachment #8810299 - Flags: review?(ethlin)
Comment on attachment 8810300 [details] [diff] [review] Part2 - Add DEPTH_STENCIL_ATTACHMENT support for WebGLFramebuffer::ValidForRead Review of attachment 8810300 [details] [diff] [review]: ----------------------------------------------------------------- We still have to add a record inside WebGLFramebuffer because CopyTexImage2D doesn't pass buffer target enum. We should record it when we call FramebufferTexture2D.
Attachment #8810300 - Flags: review?(ethlin)
Comment on attachment 8810299 [details] [diff] [review] Part1 - Fix conformance failure texture-image caused by incorrect internal format checking order. Review of attachment 8810299 [details] [diff] [review]: ----------------------------------------------------------------- Please fix the indent.
Attachment #8810299 - Flags: review?(ethlin) → review+
Attachment #8810300 - Flags: review?(ethlin) → review?(jgilbert)
Attachment #8810299 - Flags: review?(jgilbert)
Attachment #8810299 - Attachment is obsolete: true
Attachment #8810299 - Flags: review?(jgilbert)
Attachment #8813984 - Flags: review?(jgilbert)
Comment on attachment 8810300 [details] [diff] [review] Part2 - Add DEPTH_STENCIL_ATTACHMENT support for WebGLFramebuffer::ValidForRead Review of attachment 8810300 [details] [diff] [review]: ----------------------------------------------------------------- I'm not sure what you're trying to record here. ::: dom/canvas/WebGLFramebuffer.h @@ +154,4 @@ > > //// > > + GLenum mCurrentAttachEnum; Framebuffers have no concept like this that I'm aware of.
Attachment #8810300 - Flags: review?(jgilbert) → review-
Comment on attachment 8813984 [details] [diff] [review] Part1 - Fix conformance failure texture-image caused by incorrect internal format checking order. Review of attachment 8813984 [details] [diff] [review]: ----------------------------------------------------------------- ::: dom/canvas/WebGLTextureUpload.cpp @@ +1925,5 @@ > > + if (!ValidateSizedInternalFormat(dstFormat->sizedFormat)) { > + webgl->ErrorInvalidEnum("%s: Invalid Sized internalFormat.", funcName); > + return nullptr; > + } Why is this needed?
(In reply to Jeff Gilbert [:jgilbert] from comment #7) > Comment on attachment 8813984 [details] [diff] [review] > Part1 - Fix conformance failure texture-image caused by incorrect internal > format checking order. > > Review of attachment 8813984 [details] [diff] [review]: > ----------------------------------------------------------------- > > ::: dom/canvas/WebGLTextureUpload.cpp > @@ +1925,5 @@ > > > > + if (!ValidateSizedInternalFormat(dstFormat->sizedFormat)) { > > + webgl->ErrorInvalidEnum("%s: Invalid Sized internalFormat.", funcName); > > + return nullptr; > > + } > > Why is this needed? The conformance test has several subtests with invalid internal format enum which should return ERROR_INVALID_ENUM, but we didn't check it, so it will continue executing until it fails checks about format consistency which returns ERROR_INVALID_OPERATION and it is not correct for the test. https://dxr.mozilla.org/mozilla-central/source/dom/canvas/WebGLTextureUpload.cpp?q=%2Bfunction%3A%22mozilla%3A%3AValidateCopyDestUsage%28const+char+%2A%2C+mozilla%3A%3AWebGLContext+%2A%2C+const+webgl%3A%3AFormatInfo+%2A%2C+GLenum%29%22&redirect_type=single#1877
Attachment #8810300 - Attachment is obsolete: true
After discussing with Ethan, we think this test issue is a matter of internal format checking order. So both INVALID_ENUM and INVALID_OPERATION should be correct in this case. Maybe we should change the test instead of Gecko part.
Comment on attachment 8816018 [details] [diff] [review] Part2 - Add Support for non-color buffer in WebGLFramebuffer::ValidateForRead Review of attachment 8816018 [details] [diff] [review]: ----------------------------------------------------------------- This function is only for color buffers.
Attachment #8816018 - Flags: review-
(In reply to Michael Leu[:lenzak800](UTC+8) from comment #11) > After discussing with Ethan, we think this test issue is a matter of > internal format checking order. > > So both INVALID_ENUM and INVALID_OPERATION should be correct in this case. > > Maybe we should change the test instead of Gecko part. This happens a lot, so this is fairly likely.
Summary: [WebGL2 confomance test] Pass 2/conformance2/textures/misc/copy-texture-image.html → Failure on 2/conformance2/textures/misc/copy-texture-image.html
Assignee: cleu → jgilbert
Comment on attachment 8822810 [details] Bug 1316546 - CopyTexImage can convert unsigned fixed-point to signed fixed-point. - https://reviewboard.mozilla.org/r/101598/#review102108
Attachment #8822810 - Flags: review?(cleu) → review+
Attachment #8813984 - Attachment is obsolete: true
Attachment #8813984 - Flags: review?(jgilbert)
Attachment #8816018 - Attachment is obsolete: true
Pushed by jgilbert@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/5345e4d62611 CopyTexImage can convert unsigned fixed-point to signed fixed-point. - r=lenzak800
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
Based on discussion with the WG, it sounds like this is an inaccuracy in the GLES3 spec: https://github.com/KhronosGroup/WebGL/pull/2226 Word is that CopyTexImage should not accept unorm->snorm conversions.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Blocks: 1524748

We're gonna handle that change in bug 1524748.

Status: REOPENED → RESOLVED
Closed: 8 years ago6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: