diff --git a/components/script/dom/webgl2renderingcontext.rs b/components/script/dom/webgl2renderingcontext.rs index 777eb87ae55..62af18d1002 100644 --- a/components/script/dom/webgl2renderingcontext.rs +++ b/components/script/dom/webgl2renderingcontext.rs @@ -3456,7 +3456,7 @@ impl WebGL2RenderingContextMethods for WebGL2RenderingContext { return; }, }; - if !program.is_linked() || program.transform_feedback_varyings_length() != 0 { + if !program.is_linked() || program.transform_feedback_varyings_length() == 0 { self.base.webgl_error(InvalidOperation); return; }; diff --git a/tests/wpt/webgl/meta/conformance2/transform_feedback/simultaneous_binding.html.ini b/tests/wpt/webgl/meta/conformance2/transform_feedback/simultaneous_binding.html.ini index dccd8faaee3..9eaefa95b43 100644 --- a/tests/wpt/webgl/meta/conformance2/transform_feedback/simultaneous_binding.html.ini +++ b/tests/wpt/webgl/meta/conformance2/transform_feedback/simultaneous_binding.html.ini @@ -1,176 +1,77 @@ [simultaneous_binding.html] expected: ERROR - [WebGL test #72: buffer should match expected values] + [WebGL test #12: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #87: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as uniform buffer and tf simultaneously] + [WebGL test #38: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #6: buffer should match expected values] + [WebGL test #70: getError expected: INVALID_OPERATION. Was NO_ERROR : buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #15: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as vertex attrib and tf simultaneously] + [WebGL test #66: getError expected: INVALID_OPERATION. Was NO_ERROR : buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #4: Unexpected error before drawing: 1282] + [WebGL test #42: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #59: Unexpected error before drawing: 1282] + [WebGL test #39: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #37: Unexpected error before drawing: 1282] + [WebGL test #68: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #47: buffer should match expected values] + [WebGL test #16: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #49: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as vertex attrib and tf simultaneously] + [WebGL test #69: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #43: buffer should match expected values] + [WebGL test #23: getError expected: INVALID_OPERATION. Was NO_ERROR : tf enabled] expected: FAIL - [WebGL test #17: Unexpected error before drawing: 1282] + [WebGL test #40: getError expected: INVALID_OPERATION. Was NO_ERROR : buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #79: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] + [WebGL test #14: getError expected: INVALID_OPERATION. Was NO_ERROR : buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #52: should be the same as before as nothing has executed] + [WebGL test #75: getError expected: INVALID_OPERATION. Was NO_ERROR : tf enabled] expected: FAIL - [WebGL test #26: Unexpected error before drawing: 1282] + [WebGL test #41: should be the same as before as nothing has executed] expected: FAIL - [WebGL test #60: getError expected: NO_ERROR. Was INVALID_OPERATION : tf buffer not used as uniform buffer anymore] + [WebGL test #43: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #102: getError expected: INVALID_OPERATION. Was NO_ERROR : bufferData with double bound buffer] + [WebGL test #13: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #45: Unexpected error before drawing: 1282] + [WebGL test #67: should be the same as before as nothing has executed] expected: FAIL - [WebGL test #8: Unexpected error before drawing: 1282] + [WebGL test #15: should be the same as before as nothing has executed] expected: FAIL - [WebGL test #78: Unexpected error before drawing: 1282] + [WebGL test #44: getError expected: INVALID_OPERATION. Was NO_ERROR : buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #62: Unexpected error before drawing: 1282] + [WebGL test #81: getError expected: INVALID_OPERATION. Was NO_ERROR : bufferData with double bound buffer] expected: FAIL - [WebGL test #22: Unexpected error before drawing: 1282] + [WebGL test #18: getError expected: INVALID_OPERATION. Was NO_ERROR : buffer used as uniform buffer and tf simultaneously] expected: FAIL - [WebGL test #10: buffer should match expected values] + [WebGL test #64: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #70: Unexpected error before drawing: 1282] + [WebGL test #49: getError expected: INVALID_OPERATION. Was NO_ERROR : tf enabled] expected: FAIL - [WebGL test #83: Unexpected error before drawing: 1282] + [WebGL test #65: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as vertex attrib and tf simultaneously] expected: FAIL - [WebGL test #81: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as vertex attrib and tf simultaneously] - expected: FAIL - - [WebGL test #74: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #19: should be the same as before as nothing has executed] - expected: FAIL - - [WebGL test #5: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #95: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #20: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as uniform buffer and tf simultaneously] - expected: FAIL - - [WebGL test #9: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #29: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #76: buffer should match expected values] - expected: FAIL - - [WebGL test #46: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #75: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #27: getError expected: NO_ERROR. Was INVALID_OPERATION : tf buffer not used as uniform buffer anymore] - expected: FAIL - - [WebGL test #88: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #14: buffer should match expected values] - expected: FAIL - - [WebGL test #80: buffer should match expected values] - expected: FAIL - - [WebGL test #54: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as uniform buffer and tf simultaneously] - expected: FAIL - - [WebGL test #82: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as vertex attrib and tf simultaneously] - expected: FAIL - - [WebGL test #92: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #48: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as vertex attrib and tf simultaneously] - expected: FAIL - - [WebGL test #71: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #85: should be the same as before as nothing has executed] - expected: FAIL - - [WebGL test #21: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as uniform buffer and tf simultaneously] - expected: FAIL - - [WebGL test #50: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #86: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as uniform buffer and tf simultaneously] - expected: FAIL - - [WebGL test #12: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #13: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #41: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #16: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as vertex attrib and tf simultaneously] - expected: FAIL - - [WebGL test #55: Unexpected error before drawing: 1282] - expected: FAIL - - [WebGL test #38: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #42: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should be successful] - expected: FAIL - - [WebGL test #39: buffer should match expected values] - expected: FAIL - - [WebGL test #93: getError expected: NO_ERROR. Was INVALID_OPERATION : tf buffer not used as uniform buffer anymore] - expected: FAIL - - [WebGL test #53: getError expected: INVALID_OPERATION. Was NO_ERROR : drawArrays: buffer used as uniform buffer and tf simultaneously] + [WebGL test #17: getError expected: INVALID_OPERATION. Was NO_ERROR : drawElements: buffer used as uniform buffer and tf simultaneously] expected: FAIL diff --git a/tests/wpt/webgl/meta/conformance2/transform_feedback/switching-objects.html.ini b/tests/wpt/webgl/meta/conformance2/transform_feedback/switching-objects.html.ini index d152e655e96..3cc868c9d8d 100644 --- a/tests/wpt/webgl/meta/conformance2/transform_feedback/switching-objects.html.ini +++ b/tests/wpt/webgl/meta/conformance2/transform_feedback/switching-objects.html.ini @@ -1,67 +1,2 @@ [switching-objects.html] - [WebGL test #6: buffer should match expected values] - expected: FAIL - - [WebGL test #23: getError expected: NO_ERROR. Was INVALID_OPERATION : begin on tf1] - expected: FAIL - - [WebGL test #41: getError expected: NO_ERROR. Was INVALID_OPERATION : end while paused] - expected: FAIL - - [WebGL test #26: getError expected: NO_ERROR. Was INVALID_OPERATION : end on tf1] - expected: FAIL - - [WebGL test #33: getError expected: INVALID_OPERATION. Was NO_ERROR : wrong primitive mode] - expected: FAIL - - [WebGL test #14: getError expected: NO_ERROR. Was INVALID_OPERATION : begin] - expected: FAIL - - [WebGL test #27: buffer should match expected values] - expected: FAIL - - [WebGL test #22: getError expected: NO_ERROR. Was INVALID_OPERATION : bind while paused] - expected: FAIL - - [WebGL test #34: getError expected: INVALID_OPERATION. Was NO_ERROR : switch program while active] - expected: FAIL - - [WebGL test #3: getError expected: NO_ERROR. Was INVALID_OPERATION : begin TF] - expected: FAIL - - [WebGL test #17: TRANSFORM_FEEDBACK_BINDING was [object WebGLTransformFeedback\], but expected [object WebGLTransformFeedback\]] - expected: FAIL - - [WebGL test #39: getError expected: NO_ERROR. Was INVALID_OPERATION : pause] - expected: FAIL - - [WebGL test #16: getError expected: INVALID_OPERATION. Was NO_ERROR : bind while unpaused] - expected: FAIL - - [WebGL test #28: getError expected: NO_ERROR. Was INVALID_OPERATION : end on tf2] - expected: FAIL - - [WebGL test #36: getError expected: INVALID_OPERATION. Was NO_ERROR : bindTransformFeedback when active] - expected: FAIL - - [WebGL test #9: TRANSFORM_FEEDBACK_BUFFER_BINDING[0\] was [object WebGLBuffer\], but expected [object WebGLBuffer\]] - expected: FAIL - - [WebGL test #20: getError expected: NO_ERROR. Was INVALID_OPERATION : begin on tf2] - expected: FAIL - - [WebGL test #19: buffer should match expected values] - expected: FAIL - - [WebGL test #32: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should begin successfully] - expected: FAIL - - [WebGL test #18: getError expected: NO_ERROR. Was INVALID_OPERATION : transform feedback should complete successfully] - expected: FAIL - - [WebGL test #5: getError expected: NO_ERROR. Was INVALID_OPERATION : end TF] - expected: FAIL - - [WebGL test #38: getError expected: INVALID_OPERATION. Was NO_ERROR : bindBufferBase(TRANSFORM_FEEDBACK_BUFFER) when active] - expected: FAIL - + expected: TIMEOUT diff --git a/tests/wpt/webgl/meta/conformance2/transform_feedback/transform_feedback.html.ini b/tests/wpt/webgl/meta/conformance2/transform_feedback/transform_feedback.html.ini index f534e670f1f..ec7945e0ed5 100644 --- a/tests/wpt/webgl/meta/conformance2/transform_feedback/transform_feedback.html.ini +++ b/tests/wpt/webgl/meta/conformance2/transform_feedback/transform_feedback.html.ini @@ -1,28 +1,7 @@ [transform_feedback.html] - [WebGL test #31: buffer should match expected values] - expected: FAIL - [WebGL test #11: gl.getIndexedParameter(gl.TRANSFORM_FEEDBACK_BUFFER_BINDING, 0) should be null. Was [object WebGLBuffer\].] expected: FAIL - [WebGL test #25: buffer should match expected values] - expected: FAIL - - [WebGL test #32: buffer should match expected values] - expected: FAIL - - [WebGL test #26: getError expected: NO_ERROR. Was INVALID_OPERATION : linking transform feedback shader should not set an error] - expected: FAIL - - [WebGL test #28: buffer should match expected values] - expected: FAIL - - [WebGL test #35: getError expected: NO_ERROR. Was INVALID_OPERATION : linking transform feedback shader should not set an error] - expected: FAIL - - [WebGL test #34: TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN query returned an incorrect result 0 (expected 3)] - expected: FAIL - - [WebGL test #29: getError expected: NO_ERROR. Was INVALID_OPERATION : linking transform feedback shader should not set an error] + [WebGL test #24: getError expected: INVALID_OPERATION. Was NO_ERROR : after evaluating: gl.getBufferSubData(gl.TRANSFORM_FEEDBACK_BUFFER, 0, retArray, 0, retArray.length)] expected: FAIL diff --git a/tests/wpt/webgl/meta/conformance2/transform_feedback/two-unreferenced-varyings.html.ini b/tests/wpt/webgl/meta/conformance2/transform_feedback/two-unreferenced-varyings.html.ini deleted file mode 100644 index 5f49624e268..00000000000 --- a/tests/wpt/webgl/meta/conformance2/transform_feedback/two-unreferenced-varyings.html.ini +++ /dev/null @@ -1,7 +0,0 @@ -[two-unreferenced-varyings.html] - [WebGL test #2: getError expected: NO_ERROR. Was INVALID_OPERATION : Draw with transform feedback should succeed] - expected: FAIL - - [WebGL test #3: buffer should match expected values] - expected: FAIL - diff --git a/tests/wpt/webgl/meta/conformance2/transform_feedback/unwritten-output-defaults-to-zero.html.ini b/tests/wpt/webgl/meta/conformance2/transform_feedback/unwritten-output-defaults-to-zero.html.ini index c8611ab2fa1..7dc585a49f0 100644 --- a/tests/wpt/webgl/meta/conformance2/transform_feedback/unwritten-output-defaults-to-zero.html.ini +++ b/tests/wpt/webgl/meta/conformance2/transform_feedback/unwritten-output-defaults-to-zero.html.ini @@ -1,7 +1,4 @@ [unwritten-output-defaults-to-zero.html] - [WebGL test #2: buffer should match expected values] - expected: FAIL - - [WebGL test #3: getError expected: NO_ERROR. Was INVALID_OPERATION : Set up program should succeed] + [WebGL test #4: buffer should match expected values] expected: FAIL