Changeset 264536 in webkit
- Timestamp:
- Jul 17, 2020 3:01:45 PM (4 years ago)
- Location:
- trunk
- Files:
-
- 27 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r264535 r264536 1 2020-07-17 Kenneth Russell <kbr@chromium.org> 2 3 [WebGL2] ReadPixels updates 4 https://bugs.webkit.org/show_bug.cgi?id=209516 5 6 Reviewed by Dean Jackson. 7 8 Rebaseline three tests under conformance2/reading/, which are now 9 fully passing. One more driver bug workaround is needed in ANGLE 10 in order to make the remaining tests in this directory fully pass. 11 12 Rebaseline two other layout tests which progress with these 13 changes. (One gets farther and signals more errors than before.) 14 15 * webgl/2.0.0/conformance2/misc/views-with-offsets-expected.txt: 16 * webgl/2.0.0/conformance2/reading/read-pixels-from-rgb8-into-pbo-bug-expected.txt: 17 * webgl/2.0.0/conformance2/reading/read-pixels-into-pixel-pack-buffer-expected.txt: 18 * webgl/2.0.0/conformance2/reading/read-pixels-pack-parameters-expected.txt: 19 * webgl/2.0.0/conformance2/textures/misc/tex-unpack-params-expected.txt: 20 1 21 2020-07-17 James Darpinian <jdarpinian@chromium.org> 2 22 -
trunk/LayoutTests/webgl/2.0.0/conformance2/misc/views-with-offsets-expected.txt
r264377 r264536 230 230 [ 227: PASS ] getError was expected value: INVALID_VALUE : 231 231 [ 228: PASS ] getError was expected value: INVALID_VALUE : 232 [ 229: FAIL ] Does not support doReadPixels with offsets into views. 233 [ 230: PASS ] successfullyParsed is true 234 [ FAIL ] 27 failures reported 232 [ 229: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : 233 [ 230: FAIL ] Should be [10, 20, 30, 40], was [0, 0, 0, 0]. 234 [ 231: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : 235 [ 232: FAIL ] Should be [10, 20, 30, 40], was [0, 0, 0, 0]. 236 [ 233: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : 237 [ 234: FAIL ] Should be [10, 20, 30, 40], was [0, 0, 0, 0]. 238 [ 235: PASS ] getError was expected value: INVALID_OPERATION : 239 [ 236: PASS ] getError was expected value: INVALID_OPERATION : 240 [ 237: PASS ] getError was expected value: INVALID_OPERATION : 241 [ 238: PASS ] getError was expected value: INVALID_OPERATION : 242 [ 239: PASS ] getError was expected value: INVALID_VALUE : 243 [ 240: PASS ] successfullyParsed is true 244 [ FAIL ] 32 failures reported 235 245 -
trunk/LayoutTests/webgl/2.0.0/conformance2/reading/read-pixels-from-rgb8-into-pbo-bug-expected.txt
r263281 r264536 2 2 3 3 Test: ../../resources/webgl_test_files/conformance2/reading/read-pixels-from-rgb8-into-pbo-bug.html 4 [ 1: PASS ] context exists 5 [ 2: FAIL ] Expected in pixel 0: [255,0,0,255], got: 0,0,0,0 6 [ 3: PASS ] getError was expected value: NO_ERROR : Tests should complete without gl errors 7 [ 4: PASS ] successfullyParsed is true 8 [ FAIL ] 1 failures reported 4 [ PASS ] All tests passed 9 5 -
trunk/LayoutTests/webgl/2.0.0/conformance2/reading/read-pixels-into-pixel-pack-buffer-expected.txt
r254148 r264536 2 2 3 3 Test: ../../resources/webgl_test_files/conformance2/reading/read-pixels-into-pixel-pack-buffer.html 4 [ 1: PASS ] context exists 5 [ 2: PASS ] getError was expected value: INVALID_OPERATION : should generate INVALID_OPERATION if pixel pack buffer is bound 6 [ 3: PASS ] getError was expected value: NO_ERROR : 7 [ 4: FAIL ] getError expected: INVALID_VALUE. Was NO_ERROR : offset < 0 8 [ 5: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : offset > buffer size 9 [ 6: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : pixel pack buffer is not large enough 10 [ 7: PASS ] getError was expected value: NO_ERROR : reading pixels outside of the framebuffer should succeed. 11 [ 8: PASS ] getError was expected value: NO_ERROR : reading pixels outside of the framebuffer should succeed. 12 [ 9: FAIL ] getError expected: INVALID_VALUE. Was NO_ERROR : reading pixels with negative width / height should generate INVALID_VALUE. 13 [ 10: FAIL ] getError expected: INVALID_ENUM. Was NO_ERROR : Format should not be able to read as DEPTH_COMPONENT 14 [ 11: FAIL ] getError expected: INVALID_ENUM. Was NO_ERROR : Format should not be able to read as DEPTH_STENCIL 15 [ 12: FAIL ] getError expected: INVALID_ENUM. Was NO_ERROR : Format should not be able to read as R8 16 [ 13: FAIL ] getError expected: INVALID_ENUM. Was NO_ERROR : Format should not be able to read as RGBA4 17 [ 14: FAIL ] getError expected: INVALID_ENUM. Was NO_ERROR : Format should not be able to read as LUMINANCE 18 [ 15: FAIL ] getError expected: INVALID_ENUM. Was NO_ERROR : Format should not be able to read as LUMINANCE_ALPHA 19 [ 16: FAIL ] getError expected: INVALID_ENUM. Was NO_ERROR : Type should not be able to read as UNSIGNED_INT_24_8 20 [ 17: PASS ] getError was expected value: NO_ERROR : The combination of format/type should be able to read as RGBA / UNSIGNED_BYTE 21 [ 18: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as RGB / UNSIGNED_BYTE 22 [ 19: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as RGB / UNSIGNED_SHORT_5_6_5 23 [ 20: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as RGBA / UNSIGNED_SHORT_5_5_5_1 24 [ 21: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as RGBA / UNSIGNED_SHORT_4_4_4_4 25 [ 22: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as ALPHA / UNSIGNED_BYTE 26 [ 23: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as RED / UNSIGNED_BYTE 27 [ 24: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as RGBA_INTEGER / UNSIGNED_INT 28 [ 25: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : The combination of format/type should not be able to read as RGBA_INTEGER / INT 29 [ 26: PASS ] getError was expected value: NO_ERROR : 30 [ 27: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : no pixel pack buffer bound 31 [ 28: PASS ] successfullyParsed is true 32 [ FAIL ] 20 failures reported 4 [ PASS ] All tests passed 33 5 -
trunk/LayoutTests/webgl/2.0.0/conformance2/reading/read-pixels-pack-parameters-expected.txt
r256836 r264536 2 2 3 3 Test: ../../resources/webgl_test_files/conformance2/reading/read-pixels-pack-parameters.html 4 [ 1: PASS ] context exists 5 [ 2: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 6 [ 3: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 7 [ 4: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 8 [ 5: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 9 [ 6: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 10 [ 7: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 11 [ 8: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 12 [ 9: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 13 [ 10: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 14 [ 11: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 15 [ 12: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 16 [ 13: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 17 [ 14: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 18 [ 15: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 19 [ 16: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 20 [ 17: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 21 [ 18: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : readPixels should succeed 22 [ 19: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 23 [ 20: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 24 [ 21: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 25 [ 22: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 26 [ 23: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 27 [ 24: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 28 [ 25: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 29 [ 26: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 30 [ 27: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 31 [ 28: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 32 [ 29: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 33 [ 30: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 34 [ 31: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 35 [ 32: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 36 [ 33: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 37 [ 34: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 38 [ 35: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 39 [ 36: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 40 [ 37: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 41 [ 38: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 42 [ 39: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 43 [ 40: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 44 [ 41: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 45 [ 42: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 46 [ 43: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 47 [ 44: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 48 [ 45: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 49 [ 46: PASS ] getError was expected value: INVALID_OPERATION : Invalid pack params combination 50 [ 47: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 51 [ 48: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 52 [ 49: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 53 [ 50: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 54 [ 51: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 55 [ 52: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 56 [ 53: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 57 [ 54: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 58 [ 55: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 59 [ 56: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 60 [ 57: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 61 [ 58: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 62 [ 59: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 63 [ 60: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 64 [ 61: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 65 [ 62: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 66 [ 63: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 67 [ 64: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 68 [ 65: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 69 [ 66: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 70 [ 67: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 71 [ 68: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 72 [ 69: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 73 [ 70: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 74 [ 71: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 75 [ 72: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 76 [ 73: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 77 [ 74: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 78 [ 75: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 79 [ 76: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 80 [ 77: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 81 [ 78: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 82 [ 79: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 83 [ 80: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 84 [ 81: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 85 [ 82: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 86 [ 83: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 87 [ 84: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 88 [ 85: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 89 [ 86: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 90 [ 87: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 91 [ 88: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 92 [ 89: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 93 [ 90: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION : readPixels should succeed 94 [ 91: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 95 [ 92: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 96 [ 93: FAIL ] Padding byte 4 of row 0 changed: expected 1, got 2 97 [ 94: FAIL ] last pixel of row 1: expected [2,200,102,255], got [134,87,234,255] 98 [ 95: FAIL ] Padding byte 0 of row 1 changed: expected 1, got 134 99 [ 96: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 100 [ 97: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 101 [ 98: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 102 [ 99: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 103 [ 100: FAIL ] Padding byte 8 of row 0 changed: expected 1, got 2 104 [ 101: FAIL ] first pixel of row 1: expected [1,2,3,4], got [2,200,102,255] 105 [ 102: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 106 [ 103: FAIL ] Padding byte 0 of row 1 changed: expected 1, got 134 107 [ 104: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 108 [ 105: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 109 [ 106: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 110 [ 107: FAIL ] Padding byte 4 of row 0 changed: expected 1, got 249 111 [ 108: FAIL ] last pixel of row 1: expected [249,102,0,255], got [2,200,102,255] 112 [ 109: FAIL ] Padding byte 0 of row 1 changed: expected 1, got 2 113 [ 110: FAIL ] first pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 114 [ 111: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 115 [ 112: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 116 [ 113: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 117 [ 114: FAIL ] Padding byte 8 of row 0 changed: expected 1, got 249 118 [ 115: FAIL ] first pixel of row 1: expected [1,2,3,4], got [249,102,0,255] 119 [ 116: FAIL ] last pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 120 [ 117: FAIL ] Padding byte 0 of row 1 changed: expected 1, got 2 121 [ 118: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 122 [ 119: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 123 [ 120: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 124 [ 121: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 125 [ 122: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 126 [ 123: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 127 [ 124: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 128 [ 125: FAIL ] Padding byte 4 of row 0 changed: expected 1, got 2 129 [ 126: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 130 [ 127: FAIL ] last pixel of row 1: expected [1,2,3,4], got [134,87,234,255] 131 [ 128: FAIL ] Padding byte 0 of row 1 changed: expected 1, got 134 132 [ 129: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 133 [ 130: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 134 [ 131: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 135 [ 132: FAIL ] Padding byte 4 of row 0 changed: expected 1, got 99 136 [ 133: FAIL ] last pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 137 [ 134: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 138 [ 135: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 139 [ 136: FAIL ] Padding byte 4 of row 0 changed: expected 1, got 99 140 [ 137: FAIL ] first pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 141 [ 138: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 142 [ 139: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 143 [ 140: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 144 [ 141: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 145 [ 142: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 146 [ 143: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 147 [ 144: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 148 [ 145: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 149 [ 146: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 150 [ 147: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 151 [ 148: FAIL ] skipped bytes changed at index 0: expected 1 got 249 152 [ 149: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 153 [ 150: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 154 [ 151: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 155 [ 152: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 156 [ 153: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 157 [ 154: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 158 [ 155: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 159 [ 156: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 160 [ 157: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 161 [ 158: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 162 [ 159: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 163 [ 160: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 164 [ 161: FAIL ] skipped bytes changed at index 0: expected 1 got 249 165 [ 162: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 166 [ 163: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 167 [ 164: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 168 [ 165: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 169 [ 166: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 170 [ 167: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 171 [ 168: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 172 [ 169: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 173 [ 170: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 174 [ 171: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 175 [ 172: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 176 [ 173: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 177 [ 174: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 178 [ 175: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 179 [ 176: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 180 [ 177: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 181 [ 178: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 182 [ 179: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 183 [ 180: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 184 [ 181: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 185 [ 182: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 186 [ 183: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 187 [ 184: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 188 [ 185: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 189 [ 186: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 190 [ 187: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 191 [ 188: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 192 [ 189: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 193 [ 190: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 194 [ 191: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 195 [ 192: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 196 [ 193: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 197 [ 194: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 198 [ 195: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 199 [ 196: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 200 [ 197: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 201 [ 198: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 202 [ 199: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 203 [ 200: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 204 [ 201: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 205 [ 202: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 206 [ 203: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 207 [ 204: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 208 [ 205: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 209 [ 206: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 210 [ 207: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 211 [ 208: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 212 [ 209: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 213 [ 210: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 214 [ 211: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 215 [ 212: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 216 [ 213: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 217 [ 214: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 218 [ 215: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 219 [ 216: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 220 [ 217: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 221 [ 218: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 222 [ 219: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 223 [ 220: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 224 [ 221: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 225 [ 222: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 226 [ 223: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 227 [ 224: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 228 [ 225: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 229 [ 226: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 230 [ 227: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 231 [ 228: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 232 [ 229: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 233 [ 230: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 234 [ 231: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 235 [ 232: FAIL ] getError expected: NO_ERROR. Was INVALID_ENUM : readPixels should succeed 236 [ 233: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 237 [ 234: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 238 [ 235: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 239 [ 236: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 240 [ 237: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 241 [ 238: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 242 [ 239: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 243 [ 240: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 244 [ 241: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 245 [ 242: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 246 [ 243: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 247 [ 244: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 248 [ 245: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 249 [ 246: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 250 [ 247: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 251 [ 248: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 252 [ 249: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 253 [ 250: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 254 [ 251: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 255 [ 252: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 256 [ 253: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 257 [ 254: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 258 [ 255: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 259 [ 256: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 260 [ 257: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 261 [ 258: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 262 [ 259: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 263 [ 260: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 264 [ 261: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 265 [ 262: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 266 [ 263: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 267 [ 264: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 268 [ 265: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 269 [ 266: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 270 [ 267: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 271 [ 268: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 272 [ 269: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 273 [ 270: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 274 [ 271: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 275 [ 272: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 276 [ 273: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 277 [ 274: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 278 [ 275: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 279 [ 276: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 280 [ 277: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 281 [ 278: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 282 [ 279: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 283 [ 280: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 284 [ 281: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 285 [ 282: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 286 [ 283: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 287 [ 284: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 288 [ 285: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 289 [ 286: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 290 [ 287: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 291 [ 288: FAIL ] first pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 292 [ 289: FAIL ] last pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 293 [ 290: FAIL ] first pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 294 [ 291: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 295 [ 292: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 296 [ 293: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 297 [ 294: FAIL ] last pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 298 [ 295: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 299 [ 296: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 300 [ 297: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 301 [ 298: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 302 [ 299: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 303 [ 300: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 304 [ 301: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 305 [ 302: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 306 [ 303: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 307 [ 304: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 308 [ 305: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 309 [ 306: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 310 [ 307: FAIL ] first pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 311 [ 308: FAIL ] last pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 312 [ 309: FAIL ] first pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 313 [ 310: FAIL ] last pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 314 [ 311: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 315 [ 312: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 316 [ 313: FAIL ] first pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 317 [ 314: FAIL ] first pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 318 [ 315: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 319 [ 316: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 320 [ 317: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 321 [ 318: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 322 [ 319: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 323 [ 320: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 324 [ 321: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 325 [ 322: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 326 [ 323: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 327 [ 324: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 328 [ 325: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 329 [ 326: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 330 [ 327: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 331 [ 328: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 332 [ 329: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 333 [ 330: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 334 [ 331: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 335 [ 332: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 336 [ 333: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 337 [ 334: FAIL ] first pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 338 [ 335: FAIL ] last pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 339 [ 336: FAIL ] first pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 340 [ 337: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 341 [ 338: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 342 [ 339: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 343 [ 340: FAIL ] last pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 344 [ 341: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 345 [ 342: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 346 [ 343: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 347 [ 344: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 348 [ 345: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 349 [ 346: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 350 [ 347: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 351 [ 348: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 352 [ 349: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 353 [ 350: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 354 [ 351: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 355 [ 352: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 356 [ 353: FAIL ] first pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 357 [ 354: FAIL ] last pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 358 [ 355: FAIL ] first pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 359 [ 356: FAIL ] last pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 360 [ 357: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 361 [ 358: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 362 [ 359: FAIL ] first pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 363 [ 360: FAIL ] first pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 364 [ 361: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 365 [ 362: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 366 [ 363: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 367 [ 364: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 368 [ 365: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 369 [ 366: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 370 [ 367: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 371 [ 368: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 372 [ 369: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 373 [ 370: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 374 [ 371: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 375 [ 372: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 376 [ 373: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 377 [ 374: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 378 [ 375: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 379 [ 376: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 380 [ 377: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 381 [ 378: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 382 [ 379: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 383 [ 380: FAIL ] first pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 384 [ 381: FAIL ] last pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 385 [ 382: FAIL ] first pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 386 [ 383: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 387 [ 384: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 388 [ 385: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 389 [ 386: FAIL ] last pixel of row 1: expected [249,102,0,255], got [1,2,3,4] 390 [ 387: FAIL ] last pixel of row 2: expected [2,200,102,255], got [1,2,3,4] 391 [ 388: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 392 [ 389: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 393 [ 390: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 394 [ 391: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 395 [ 392: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 396 [ 393: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 397 [ 394: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 398 [ 395: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 399 [ 396: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 400 [ 397: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 401 [ 398: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 402 [ 399: FAIL ] first pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 403 [ 400: FAIL ] last pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 404 [ 401: FAIL ] first pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 405 [ 402: FAIL ] last pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 406 [ 403: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 407 [ 404: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 408 [ 405: FAIL ] first pixel of row 0: expected [134,87,234,255], got [1,2,3,4] 409 [ 406: FAIL ] first pixel of row 1: expected [99,5,76,255], got [1,2,3,4] 410 [ 407: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 411 [ 408: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 412 [ 409: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 413 [ 410: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 414 [ 411: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 415 [ 412: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 416 [ 413: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 417 [ 414: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 418 [ 415: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 419 [ 416: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 420 [ 417: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 421 [ 418: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 422 [ 419: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 423 [ 420: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 424 [ 421: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 425 [ 422: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 426 [ 423: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 427 [ 424: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 428 [ 425: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 429 [ 426: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR : Invalid pack params combination 430 [ 427: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_ENUM : buffer too small 431 [ 428: PASS ] getError was expected value: NO_ERROR : readPixels should succeed 432 [ 429: FAIL ] first pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 433 [ 430: FAIL ] last pixel of row 0: expected [249,102,0,255], got [1,2,3,4] 434 [ 431: FAIL ] first pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 435 [ 432: FAIL ] last pixel of row 1: expected [2,200,102,255], got [1,2,3,4] 436 [ 433: FAIL ] first pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 437 [ 434: FAIL ] last pixel of row 2: expected [134,87,234,255], got [1,2,3,4] 438 [ 435: PASS ] successfullyParsed is true 439 [ FAIL ] 363 failures reported 4 [ PASS ] All tests passed 440 5 -
trunk/LayoutTests/webgl/2.0.0/conformance2/textures/misc/tex-unpack-params-expected.txt
r261413 r264536 143 143 [ 140: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 144 144 [ 141: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 145 [ 142: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination145 [ 142: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 146 146 [ 143: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 147 147 [ 144: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 148 148 [ 145: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 149 [ 146: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination149 [ 146: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 150 150 [ 147: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 151 151 [ 148: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed … … 419 419 [ 416: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 420 420 [ 417: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 421 [ 418: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination421 [ 418: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 422 422 [ 419: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 423 423 [ 420: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 424 424 [ 421: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 425 [ 422: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination425 [ 422: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 426 426 [ 423: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 427 427 [ 424: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 428 428 [ 425: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 429 [ 426: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination429 [ 426: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 430 430 [ 427: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 431 431 [ 428: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 432 432 [ 429: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 433 [ 430: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination433 [ 430: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 434 434 [ 431: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 435 435 [ 432: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 436 436 [ 433: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 437 [ 434: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination437 [ 434: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 438 438 [ 435: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 439 439 [ 436: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 440 440 [ 437: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 441 [ 438: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination441 [ 438: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 442 442 [ 439: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 443 443 [ 440: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 444 444 [ 441: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 445 [ 442: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination445 [ 442: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 446 446 [ 443: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 447 447 [ 444: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 448 448 [ 445: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 449 [ 446: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination449 [ 446: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 450 450 [ 447: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 451 451 [ 448: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 452 452 [ 449: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 453 [ 450: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination453 [ 450: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 454 454 [ 451: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 455 455 [ 452: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 456 456 [ 453: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 457 [ 454: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination457 [ 454: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 458 458 [ 455: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 459 459 [ 456: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 460 460 [ 457: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 461 [ 458: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination461 [ 458: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 462 462 [ 459: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 463 463 [ 460: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 464 464 [ 461: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 465 [ 462: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination465 [ 462: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 466 466 [ 463: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 467 467 [ 464: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed … … 477 477 [ 474: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 478 478 [ 475: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 479 [ 476: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination479 [ 476: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 480 480 [ 477: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 481 481 [ 478: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 482 482 [ 479: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 483 [ 480: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination483 [ 480: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 484 484 [ 481: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 485 485 [ 482: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 486 486 [ 483: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 487 [ 484: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination487 [ 484: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 488 488 [ 485: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 489 489 [ 486: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed … … 510 510 [ 507: PASS ] getError was expected value: NO_ERROR : unpack param constraints do not apply if no data are uploaded. 511 511 [ 508: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 512 [ 509: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small513 [ 510: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed514 [ 511: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed515 [ 512: FAIL ] compare pixels: 35 pixels differ512 [ 509: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 513 [ 510: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 514 [ 511: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 515 [ 512: PASS ] compare pixels: as expected 516 516 [ 513: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 517 [ 514: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed518 [ 515: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed519 [ 516: FAIL ] compare pixels: 12 pixels differ517 [ 514: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 518 [ 515: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 519 [ 516: PASS ] compare pixels: as expected 520 520 [ 517: PASS ] getError was expected value: NO_ERROR : no error 521 521 [ 518: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 522 [ 519: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small522 [ 519: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 523 523 [ 520: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 524 524 [ 521: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 526 526 [ 523: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 527 527 [ 524: FAIL ] compare pixels: 105 pixels differ 528 [ 525: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small528 [ 525: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 529 529 [ 526: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 530 530 [ 527: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 533 533 [ 530: PASS ] getError was expected value: NO_ERROR : no error 534 534 [ 531: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 535 [ 532: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small536 [ 533: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed537 [ 534: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed538 [ 535: FAIL ] compare pixels: 35 pixels differ535 [ 532: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 536 [ 533: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 537 [ 534: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 538 [ 535: PASS ] compare pixels: as expected 539 539 [ 536: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 540 [ 537: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed541 [ 538: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed542 [ 539: FAIL ] compare pixels: 12 pixels differ540 [ 537: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 541 [ 538: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 542 [ 539: PASS ] compare pixels: as expected 543 543 [ 540: PASS ] getError was expected value: NO_ERROR : no error 544 544 [ 541: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 545 [ 542: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small545 [ 542: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 546 546 [ 543: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 547 547 [ 544: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 550 550 [ 547: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 551 551 [ 548: FAIL ] compare pixels: 140 pixels differ 552 [ 549: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small552 [ 549: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 553 553 [ 550: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 554 554 [ 551: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 558 558 [ 555: PASS ] getError was expected value: NO_ERROR : no error 559 559 [ 556: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 560 [ 557: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small561 [ 558: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed562 [ 559: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed563 [ 560: FAIL ] compare pixels: 42 pixels differ560 [ 557: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 561 [ 558: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 562 [ 559: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 563 [ 560: PASS ] compare pixels: as expected 564 564 [ 561: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 565 [ 562: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed566 [ 563: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed567 [ 564: FAIL ] compare pixels: 16 pixels differ565 [ 562: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 566 [ 563: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 567 [ 564: PASS ] compare pixels: as expected 568 568 [ 565: PASS ] getError was expected value: NO_ERROR : no error 569 569 [ 566: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 570 [ 567: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small570 [ 567: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 571 571 [ 568: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 572 572 [ 569: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 574 574 [ 571: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 575 575 [ 572: FAIL ] compare pixels: 126 pixels differ 576 [ 573: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small576 [ 573: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 577 577 [ 574: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 578 578 [ 575: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 581 581 [ 578: PASS ] getError was expected value: NO_ERROR : no error 582 582 [ 579: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 583 [ 580: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small584 [ 581: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed585 [ 582: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed586 [ 583: FAIL ] compare pixels: 40 pixels differ583 [ 580: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 584 [ 581: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 585 [ 582: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 586 [ 583: PASS ] compare pixels: as expected 587 587 [ 584: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 588 [ 585: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed589 [ 586: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed590 [ 587: FAIL ] compare pixels: 15 pixels differ588 [ 585: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 589 [ 586: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 590 [ 587: PASS ] compare pixels: as expected 591 591 [ 588: PASS ] getError was expected value: NO_ERROR : no error 592 592 [ 589: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 593 [ 590: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small593 [ 590: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 594 594 [ 591: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 595 595 [ 592: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 597 597 [ 594: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 598 598 [ 595: FAIL ] compare pixels: 120 pixels differ 599 [ 596: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small599 [ 596: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 600 600 [ 597: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 601 601 [ 598: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 604 604 [ 601: PASS ] getError was expected value: NO_ERROR : no error 605 605 [ 602: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 606 [ 603: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small607 [ 604: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed608 [ 605: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed609 [ 606: FAIL ] compare pixels: 90 pixels differ606 [ 603: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 607 [ 604: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 608 [ 605: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 609 [ 606: PASS ] compare pixels: as expected 610 610 [ 607: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 611 [ 608: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed612 [ 609: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed613 [ 610: FAIL ] compare pixels: 48 pixels differ611 [ 608: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 612 [ 609: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 613 [ 610: PASS ] compare pixels: as expected 614 614 [ 611: PASS ] getError was expected value: NO_ERROR : no error 615 615 [ 612: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 616 [ 613: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small616 [ 613: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 617 617 [ 614: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 618 618 [ 615: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 619 619 [ 616: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 620 620 [ 617: FAIL ] compare pixels: 180 pixels differ 621 [ 618: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small621 [ 618: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 622 622 [ 619: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 623 623 [ 620: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 625 625 [ 622: PASS ] getError was expected value: NO_ERROR : no error 626 626 [ 623: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 627 [ 624: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small628 [ 625: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination627 [ 624: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 628 [ 625: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 629 629 [ 626: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 630 [ 627: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small631 [ 628: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination630 [ 627: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 631 [ 628: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 632 632 [ 629: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 633 [ 630: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small634 [ 631: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination633 [ 630: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 634 [ 631: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 635 635 [ 632: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 636 [ 633: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small637 [ 634: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination636 [ 633: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 637 [ 634: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 638 638 [ 635: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 639 [ 636: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small640 [ 637: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination639 [ 636: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 640 [ 637: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 641 641 [ 638: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 642 [ 639: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small643 [ 640: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination642 [ 639: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 643 [ 640: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 644 644 [ 641: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 645 [ 642: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small646 [ 643: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination645 [ 642: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 646 [ 643: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 647 647 [ 644: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 648 [ 645: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small649 [ 646: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination648 [ 645: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 649 [ 646: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 650 650 [ 647: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 651 [ 648: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small652 [ 649: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed653 [ 650: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed654 [ 651: FAIL ] compare pixels: 35 pixels differ651 [ 648: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 652 [ 649: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 653 [ 650: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 654 [ 651: PASS ] compare pixels: as expected 655 655 [ 652: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 656 [ 653: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed657 [ 654: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed658 [ 655: FAIL ] compare pixels: 12 pixels differ656 [ 653: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 657 [ 654: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 658 [ 655: PASS ] compare pixels: as expected 659 659 [ 656: PASS ] getError was expected value: NO_ERROR : no error 660 660 [ 657: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 661 [ 658: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small661 [ 658: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 662 662 [ 659: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 663 663 [ 660: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 665 665 [ 662: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 666 666 [ 663: FAIL ] compare pixels: 105 pixels differ 667 [ 664: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small667 [ 664: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 668 668 [ 665: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 669 669 [ 666: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 672 672 [ 669: PASS ] getError was expected value: NO_ERROR : no error 673 673 [ 670: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 674 [ 671: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small675 [ 672: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed676 [ 673: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed677 [ 674: FAIL ] compare pixels: 35 pixels differ674 [ 671: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 675 [ 672: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 676 [ 673: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 677 [ 674: PASS ] compare pixels: as expected 678 678 [ 675: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 679 [ 676: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed680 [ 677: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed681 [ 678: FAIL ] compare pixels: 12 pixels differ679 [ 676: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 680 [ 677: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 681 [ 678: PASS ] compare pixels: as expected 682 682 [ 679: PASS ] getError was expected value: NO_ERROR : no error 683 683 [ 680: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 684 [ 681: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small684 [ 681: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 685 685 [ 682: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 686 686 [ 683: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 688 688 [ 685: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 689 689 [ 686: FAIL ] compare pixels: 105 pixels differ 690 [ 687: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small690 [ 687: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 691 691 [ 688: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 692 692 [ 689: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 695 695 [ 692: PASS ] getError was expected value: NO_ERROR : no error 696 696 [ 693: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 697 [ 694: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small698 [ 695: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed699 [ 696: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed700 [ 697: FAIL ] compare pixels: 35 pixels differ697 [ 694: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 698 [ 695: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 699 [ 696: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 700 [ 697: PASS ] compare pixels: as expected 701 701 [ 698: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 702 [ 699: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed703 [ 700: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed704 [ 701: FAIL ] compare pixels: 12 pixels differ702 [ 699: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 703 [ 700: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 704 [ 701: PASS ] compare pixels: as expected 705 705 [ 702: PASS ] getError was expected value: NO_ERROR : no error 706 706 [ 703: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 707 [ 704: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small707 [ 704: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 708 708 [ 705: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 709 709 [ 706: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 711 711 [ 708: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 712 712 [ 709: FAIL ] compare pixels: 105 pixels differ 713 [ 710: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small713 [ 710: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 714 714 [ 711: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 715 715 [ 712: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 718 718 [ 715: PASS ] getError was expected value: NO_ERROR : no error 719 719 [ 716: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 720 [ 717: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small721 [ 718: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed722 [ 719: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed723 [ 720: FAIL ] compare pixels: 35 pixels differ720 [ 717: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 721 [ 718: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 722 [ 719: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 723 [ 720: PASS ] compare pixels: as expected 724 724 [ 721: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 725 [ 722: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed726 [ 723: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed727 [ 724: FAIL ] compare pixels: 12 pixels differ725 [ 722: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 726 [ 723: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 727 [ 724: PASS ] compare pixels: as expected 728 728 [ 725: PASS ] getError was expected value: NO_ERROR : no error 729 729 [ 726: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 730 [ 727: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small730 [ 727: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 731 731 [ 728: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 732 732 [ 729: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 736 736 [ 733: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 737 737 [ 734: FAIL ] compare pixels: 175 pixels differ 738 [ 735: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small738 [ 735: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 739 739 [ 736: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 740 740 [ 737: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 744 744 [ 741: PASS ] getError was expected value: NO_ERROR : no error 745 745 [ 742: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 746 [ 743: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small747 [ 744: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed748 [ 745: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed749 [ 746: FAIL ] compare pixels: 42 pixels differ746 [ 743: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 747 [ 744: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 748 [ 745: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 749 [ 746: PASS ] compare pixels: as expected 750 750 [ 747: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 751 [ 748: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed752 [ 749: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed753 [ 750: FAIL ] compare pixels: 16 pixels differ751 [ 748: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 752 [ 749: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 753 [ 750: PASS ] compare pixels: as expected 754 754 [ 751: PASS ] getError was expected value: NO_ERROR : no error 755 755 [ 752: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 756 [ 753: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small756 [ 753: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 757 757 [ 754: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 758 758 [ 755: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 761 761 [ 758: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 762 762 [ 759: FAIL ] compare pixels: 168 pixels differ 763 [ 760: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small763 [ 760: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 764 764 [ 761: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 765 765 [ 762: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 769 769 [ 766: PASS ] getError was expected value: NO_ERROR : no error 770 770 [ 767: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 771 [ 768: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small772 [ 769: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed773 [ 770: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed774 [ 771: FAIL ] compare pixels: 35 pixels differ771 [ 768: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 772 [ 769: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 773 [ 770: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 774 [ 771: PASS ] compare pixels: as expected 775 775 [ 772: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 776 [ 773: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed777 [ 774: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed778 [ 775: FAIL ] compare pixels: 12 pixels differ776 [ 773: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 777 [ 774: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 778 [ 775: PASS ] compare pixels: as expected 779 779 [ 776: PASS ] getError was expected value: NO_ERROR : no error 780 780 [ 777: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 781 [ 778: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small782 [ 779: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination781 [ 778: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 782 [ 779: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 783 783 [ 780: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 784 [ 781: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small785 [ 782: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed786 [ 783: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed787 [ 784: FAIL ] compare pixels: 35 pixels differ784 [ 781: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 785 [ 782: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 786 [ 783: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 787 [ 784: PASS ] compare pixels: as expected 788 788 [ 785: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 789 [ 786: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed790 [ 787: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed791 [ 788: FAIL ] compare pixels: 12 pixels differ789 [ 786: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 790 [ 787: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 791 [ 788: PASS ] compare pixels: as expected 792 792 [ 789: PASS ] getError was expected value: NO_ERROR : no error 793 793 [ 790: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 794 [ 791: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small795 [ 792: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination794 [ 791: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 795 [ 792: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 796 796 [ 793: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 797 [ 794: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small798 [ 795: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed799 [ 796: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed800 [ 797: FAIL ] compare pixels: 35 pixels differ797 [ 794: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 798 [ 795: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 799 [ 796: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 800 [ 797: PASS ] compare pixels: as expected 801 801 [ 798: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 802 [ 799: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed803 [ 800: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed804 [ 801: FAIL ] compare pixels: 12 pixels differ802 [ 799: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 803 [ 800: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 804 [ 801: PASS ] compare pixels: as expected 805 805 [ 802: PASS ] getError was expected value: NO_ERROR : no error 806 806 [ 803: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 807 [ 804: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small808 [ 805: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination807 [ 804: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 808 [ 805: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 809 809 [ 806: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 810 [ 807: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small811 [ 808: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed812 [ 809: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed813 [ 810: FAIL ] compare pixels: 35 pixels differ810 [ 807: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 811 [ 808: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 812 [ 809: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 813 [ 810: PASS ] compare pixels: as expected 814 814 [ 811: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 815 [ 812: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed816 [ 813: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed817 [ 814: FAIL ] compare pixels: 12 pixels differ815 [ 812: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 816 [ 813: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 817 [ 814: PASS ] compare pixels: as expected 818 818 [ 815: PASS ] getError was expected value: NO_ERROR : no error 819 819 [ 816: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 820 [ 817: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small821 [ 818: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination820 [ 817: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 821 [ 818: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 822 822 [ 819: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 823 [ 820: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small824 [ 821: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed825 [ 822: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed826 [ 823: FAIL ] compare pixels: 35 pixels differ823 [ 820: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 824 [ 821: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 825 [ 822: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 826 [ 823: PASS ] compare pixels: as expected 827 827 [ 824: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 828 [ 825: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed829 [ 826: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed830 [ 827: FAIL ] compare pixels: 12 pixels differ828 [ 825: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 829 [ 826: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 830 [ 827: PASS ] compare pixels: as expected 831 831 [ 828: PASS ] getError was expected value: NO_ERROR : no error 832 832 [ 829: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 833 [ 830: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small833 [ 830: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 834 834 [ 831: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 835 835 [ 832: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 837 837 [ 834: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 838 838 [ 835: FAIL ] compare pixels: 105 pixels differ 839 [ 836: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small839 [ 836: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 840 840 [ 837: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 841 841 [ 838: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 844 844 [ 841: PASS ] getError was expected value: NO_ERROR : no error 845 845 [ 842: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 846 [ 843: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small847 [ 844: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed848 [ 845: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed849 [ 846: FAIL ] compare pixels: 42 pixels differ846 [ 843: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 847 [ 844: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 848 [ 845: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 849 [ 846: PASS ] compare pixels: as expected 850 850 [ 847: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 851 [ 848: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed852 [ 849: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed853 [ 850: FAIL ] compare pixels: 20 pixels differ851 [ 848: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 852 [ 849: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 853 [ 850: PASS ] compare pixels: as expected 854 854 [ 851: PASS ] getError was expected value: NO_ERROR : no error 855 855 [ 852: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 856 [ 853: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small856 [ 853: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 857 857 [ 854: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 858 858 [ 855: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 860 860 [ 857: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 861 861 [ 858: FAIL ] compare pixels: 126 pixels differ 862 [ 859: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small862 [ 859: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 863 863 [ 860: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 864 864 [ 861: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 867 867 [ 864: PASS ] getError was expected value: NO_ERROR : no error 868 868 [ 865: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 869 [ 866: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small870 [ 867: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed871 [ 868: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed872 [ 869: FAIL ] compare pixels: 49 pixels differ869 [ 866: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 870 [ 867: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 871 [ 868: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 872 [ 869: PASS ] compare pixels: as expected 873 873 [ 870: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 874 [ 871: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed875 [ 872: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed876 [ 873: FAIL ] compare pixels: 15 pixels differ874 [ 871: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 875 [ 872: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 876 [ 873: PASS ] compare pixels: as expected 877 877 [ 874: PASS ] getError was expected value: NO_ERROR : no error 878 878 [ 875: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 879 [ 876: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small879 [ 876: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 880 880 [ 877: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 881 881 [ 878: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 883 883 [ 880: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 884 884 [ 881: FAIL ] compare pixels: 147 pixels differ 885 [ 882: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small885 [ 882: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 886 886 [ 883: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 887 887 [ 884: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 890 890 [ 887: PASS ] getError was expected value: NO_ERROR : no error 891 891 [ 888: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 892 [ 889: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small893 [ 890: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed894 [ 891: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed895 [ 892: FAIL ] compare pixels: 56 pixels differ892 [ 889: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 893 [ 890: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 894 [ 891: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 895 [ 892: PASS ] compare pixels: as expected 896 896 [ 893: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 897 [ 894: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed898 [ 895: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed899 [ 896: FAIL ] compare pixels: 24 pixels differ897 [ 894: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 898 [ 895: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 899 [ 896: PASS ] compare pixels: as expected 900 900 [ 897: PASS ] getError was expected value: NO_ERROR : no error 901 901 [ 898: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 902 [ 899: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small902 [ 899: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 903 903 [ 900: PASS ] getError was expected value: NO_ERROR : texImage3D with correct buffer size should succeed 904 904 [ 901: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 906 906 [ 903: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed 907 907 [ 904: FAIL ] compare pixels: 168 pixels differ 908 [ 905: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small908 [ 905: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 909 909 [ 906: PASS ] getError was expected value: NO_ERROR : texSubImage3D with correct buffer size should succeed 910 910 [ 907: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION : read back texture pixels should succeed … … 913 913 [ 910: PASS ] getError was expected value: NO_ERROR : no error 914 914 [ 911: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 915 [ 912: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small916 [ 913: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination915 [ 912: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 916 [ 913: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 917 917 [ 914: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 918 [ 915: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small919 [ 916: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination918 [ 915: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 919 [ 916: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 920 920 [ 917: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 921 [ 918: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small922 [ 919: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination921 [ 918: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 922 [ 919: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 923 923 [ 920: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 924 [ 921: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small925 [ 922: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination924 [ 921: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 925 [ 922: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 926 926 [ 923: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 927 [ 924: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small928 [ 925: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination927 [ 924: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 928 [ 925: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 929 929 [ 926: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 930 [ 927: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small931 [ 928: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination930 [ 927: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 931 [ 928: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 932 932 [ 929: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 933 [ 930: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small934 [ 931: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination933 [ 930: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 934 [ 931: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 935 935 [ 932: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 936 [ 933: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small937 [ 934: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination936 [ 933: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 937 [ 934: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 938 938 [ 935: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 939 [ 936: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small940 [ 937: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination939 [ 936: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 940 [ 937: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 941 941 [ 938: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 942 [ 939: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small943 [ 940: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination942 [ 939: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 943 [ 940: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 944 944 [ 941: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 945 [ 942: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small946 [ 943: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination945 [ 942: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 946 [ 943: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 947 947 [ 944: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 948 [ 945: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small949 [ 946: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination948 [ 945: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 949 [ 946: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 950 950 [ 947: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 951 [ 948: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small952 [ 949: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed953 [ 950: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed954 [ 951: FAIL ] compare pixels: 35 pixels differ951 [ 948: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 952 [ 949: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 953 [ 950: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 954 [ 951: PASS ] compare pixels: as expected 955 955 [ 952: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 956 [ 953: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed957 [ 954: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed958 [ 955: FAIL ] compare pixels: 12 pixels differ956 [ 953: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 957 [ 954: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 958 [ 955: PASS ] compare pixels: as expected 959 959 [ 956: PASS ] getError was expected value: NO_ERROR : no error 960 960 [ 957: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 961 [ 958: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small962 [ 959: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination961 [ 958: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 962 [ 959: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 963 963 [ 960: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 964 [ 961: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small965 [ 962: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination964 [ 961: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 965 [ 962: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 966 966 [ 963: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 967 [ 964: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small968 [ 965: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination967 [ 964: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 968 [ 965: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 969 969 [ 966: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 970 [ 967: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small971 [ 968: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: invalid unpack params combination970 [ 967: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 971 [ 968: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 972 972 [ 969: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 973 [ 970: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small974 [ 971: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination973 [ 970: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 974 [ 971: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 975 975 [ 972: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 976 [ 973: FAIL ] getError expected: INVALID_OPERATION. Was INVALID_VALUE: buffer too small977 [ 974: FAIL ] getError expected: NO_ERROR. Was INVALID_VALUE: texImage2D with correct buffer size should succeed978 [ 975: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed979 [ 976: FAIL ] compare pixels: 136 pixels differ976 [ 973: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 977 [ 974: PASS ] getError was expected value: NO_ERROR : texImage2D with correct buffer size should succeed 978 [ 975: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 979 [ 976: PASS ] compare pixels: as expected 980 980 [ 977: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 981 [ 978: FAIL ] getError expected: NO_ERROR. Was INVALID_OPERATION: texSubImage2D with correct buffer size should succeed982 [ 979: FAIL ] getError expected: NO_ERROR. Was INVALID_FRAMEBUFFER_OPERATION: read back texture pixels should succeed983 [ 980: FAIL ] compare pixels: 24 pixels differ981 [ 978: PASS ] getError was expected value: NO_ERROR : texSubImage2D with correct buffer size should succeed 982 [ 979: PASS ] getError was expected value: NO_ERROR : read back texture pixels should succeed 983 [ 980: PASS ] compare pixels: as expected 984 984 [ 981: PASS ] getError was expected value: NO_ERROR : no error 985 985 [ 982: PASS ] getError was expected value: NO_ERROR : Set up pixel store parameters should succeed 986 [ 983: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: buffer too small987 [ 984: FAIL ] getError expected: INVALID_OPERATION. Was NO_ERROR: invalid unpack params combination986 [ 983: PASS ] getError was expected value: INVALID_OPERATION : buffer too small 987 [ 984: PASS ] getError was expected value: INVALID_OPERATION : invalid unpack params combination 988 988 [ 985: PASS ] successfullyParsed is true 989 [ FAIL ] 451failures reported989 [ FAIL ] 206 failures reported 990 990 -
trunk/Source/ThirdParty/ANGLE/ChangeLog
r264238 r264536 1 2020-07-17 Kenneth Russell <kbr@chromium.org> 2 3 [WebGL2] ReadPixels updates 4 https://bugs.webkit.org/show_bug.cgi?id=209516 5 6 Reviewed by Dean Jackson. 7 8 Add workaround for OpenGL driver bug on macOS where 9 GL_PACK_SKIP_ROWS and GL_PACK_SKIP_PIXELS are ignored. 10 11 Add WebGL 2.0-specific validation constraints for pixel pack and 12 unpack parameters. 13 14 These changes are being upstreamed to ANGLE in 15 http://crbug.com/angleproject/4849 . 16 17 * include/platform/FeaturesGL.h: 18 * src/libANGLE/ErrorStrings.h: 19 * src/libANGLE/renderer/gl/FramebufferGL.cpp: 20 (rx::FramebufferGL::readPixels): 21 * src/libANGLE/renderer/gl/renderergl_utils.cpp: 22 (rx::nativegl_gl::InitializeFeatures): 23 * src/libANGLE/validationES.cpp: 24 (gl::ValidatePixelPack): 25 * src/libANGLE/validationES3.cpp: 26 (gl::ValidateES3TexImageParametersBase): 27 1 28 2020-07-10 Kenneth Russell <kbr@chromium.org> 2 29 -
trunk/Source/ThirdParty/ANGLE/include/platform/FeaturesGL.h
r264238 r264536 442 442 "CopyTexImage2D spuriously returns errors on iOS when copying from renderbuffers.", 443 443 &members, "https://anglebug.com/4674"}; 444 445 Feature emulatePackSkipRowsAndPackSkipPixels = { 446 "emulate_pack_skip_rows_and_pack_skip_pixels", FeatureCategory::OpenGLWorkarounds, 447 "GL_PACK_SKIP_ROWS and GL_PACK_SKIP_PIXELS are ignored in Apple's OpenGL driver.", 448 &members, "https://anglebug.com/4849"}; 444 449 }; 445 450 -
trunk/Source/ThirdParty/ANGLE/src/libANGLE/ErrorStrings.h
r262036 r264536 252 252 MSG kInvalidName = "Invalid name."; 253 253 MSG kInvalidNameCharacters = "Name contains invalid characters."; 254 MSG kInvalidPackParametersForWebGL = "Invalid combination of pack parameters for WebGL."; 254 255 MSG kInvalidPname = "Invalid pname."; 255 256 MSG kInvalidPointerQuery = "Invalid pointer query."; … … 319 320 MSG kInvalidUniformLocation = "Invalid uniform location"; 320 321 MSG kInvalidUnpackAlignment = "Unpack alignment must be 1, 2, 4 or 8."; 322 MSG kInvalidUnpackParametersForWebGL = "Invalid combination of unpack parameters for WebGL."; 321 323 MSG kInvalidVaryingLocation = "Location exceeds max varying."; 322 324 MSG kInvalidVertexArray = "Vertex array does not exist."; -
trunk/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/FramebufferGL.cpp
r262036 r264536 681 681 packState.rowLength && !GetImplAs<ContextGL>(context)->getNativeExtensions().packSubimage; 682 682 683 if (cannotSetDesiredRowLength || useOverlappingRowsWorkaround) 683 bool usePackSkipWorkaround = features.emulatePackSkipRowsAndPackSkipPixels.enabled && 684 (packState.skipRows != 0 || packState.skipPixels != 0); 685 686 if (cannotSetDesiredRowLength || useOverlappingRowsWorkaround || usePackSkipWorkaround) 684 687 { 685 688 return readPixelsRowByRow(context, clippedArea, format, readFormat, readType, packState, -
trunk/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp
r264238 r264536 1728 1728 features, emulateCopyTexImage2DFromRenderbuffers, 1729 1729 IsApple() && functions->standard == STANDARD_GL_ES && !(isAMD && IsWindows())); 1730 1731 // anglebug.com/4849 1732 // This workaround is definitely needed on Intel and AMD GPUs. To 1733 // determine whether it's needed on iOS and Apple Silicon, the 1734 // workaround's being restricted to existing desktop GPUs. 1735 ANGLE_FEATURE_CONDITION(features, emulatePackSkipRowsAndPackSkipPixels, 1736 IsApple() && (isAMD || isIntel || isNvidia)); 1730 1737 } 1731 1738 -
trunk/Source/ThirdParty/ANGLE/src/libANGLE/validationES.cpp
r262036 r264536 5730 5730 } 5731 5731 5732 if (context->getExtensions().webglCompatibility) 5733 { 5734 // WebGL 2.0 disallows the scenario: 5735 // GL_PACK_SKIP_PIXELS + width > DataStoreWidth 5736 // where: 5737 // DataStoreWidth = (GL_PACK_ROW_LENGTH ? GL_PACK_ROW_LENGTH : width) 5738 // Since these two pack parameters can only be set to non-zero values 5739 // on WebGL 2.0 contexts, verify them for all WebGL contexts. 5740 GLint dataStoreWidth = pack.rowLength ? pack.rowLength : width; 5741 if (pack.skipPixels + width > dataStoreWidth) 5742 { 5743 context->validationError(GL_INVALID_OPERATION, kInvalidPackParametersForWebGL); 5744 return false; 5745 } 5746 } 5747 5732 5748 return true; 5733 5749 } -
trunk/Source/ThirdParty/ANGLE/src/libANGLE/validationES3.cpp
r262036 r264536 671 671 } 672 672 673 if (context->getExtensions().webglCompatibility) 674 { 675 // Define: 676 // DataStoreWidth = (GL_UNPACK_ROW_LENGTH ? GL_UNPACK_ROW_LENGTH : width) 677 // DataStoreHeight = (GL_UNPACK_IMAGE_HEIGHT ? GL_UNPACK_IMAGE_HEIGHT : height) 678 // 679 // WebGL 2.0 imposes the following additional constraints: 680 // 681 // 1) texImage2D and texSubImage2D generate INVALID_OPERATION if: 682 // GL_UNPACK_SKIP_PIXELS + width > DataStoreWidth 683 // except for texImage2D if no GL_PIXEL_UNPACK_BUFFER is 684 // bound and _pixels_ is null. 685 // 686 // 2) texImage3D and texSubImage3D generate INVALID_OPERATION if: 687 // GL_UNPACK_SKIP_PIXELS + width > DataStoreWidth 688 // GL_UNPACK_SKIP_ROWS + height > DataStoreHeight 689 // except for texImage3D if no GL_PIXEL_UNPACK_BUFFER is 690 // bound and _pixels_ is null. 691 if (!pixelUnpackBuffer && !pixels) 692 { 693 // Exception case for texImage2D or texImage3D, above. 694 // The validation above ensures null pixels have been rejected for texSubImage. 695 ASSERT(!isSubImage); 696 } 697 else 698 { 699 const auto &unpack = context->getState().getUnpackState(); 700 GLint dataStoreWidth = unpack.rowLength ? unpack.rowLength : width; 701 if (unpack.skipPixels + width > dataStoreWidth) 702 { 703 context->validationError(GL_INVALID_OPERATION, kInvalidUnpackParametersForWebGL); 704 return false; 705 } 706 if (target == TextureTarget::_3D || target == TextureTarget::_2DArray) 707 { 708 GLint dataStoreHeight = unpack.imageHeight ? unpack.imageHeight : height; 709 if (unpack.skipRows + height > dataStoreHeight) 710 { 711 context->validationError(GL_INVALID_OPERATION, kInvalidUnpackParametersForWebGL); 712 return false; 713 } 714 } 715 } 716 } 717 673 718 return true; 674 719 } -
trunk/Source/WebCore/ChangeLog
r264535 r264536 1 2020-07-17 Kenneth Russell <kbr@chromium.org> 2 3 [WebGL2] ReadPixels updates 4 https://bugs.webkit.org/show_bug.cgi?id=209516 5 6 Reviewed by Dean Jackson. 7 8 Upgrade readPixels to WebGL 2.0 functionality. 9 10 Handle both WebGL 2.0 pack/unpack parameters correctly. Fix 11 preexisting bugs in texture uploads from pixel unpack buffers. 12 Remove entry points from GraphicsContextGL that will never be used 13 by the WebGL 2.0 implementation. 14 15 Covered by existing WebGL 2.0 conformance tests. 16 17 * html/canvas/WebGL2RenderingContext.cpp: 18 (WebCore::WebGL2RenderingContext::initializeNewContext): 19 (WebCore::WebGL2RenderingContext::sliceArrayBufferView): 20 (WebCore::WebGL2RenderingContext::pixelStorei): 21 (WebCore::WebGL2RenderingContext::texImage2D): 22 (WebCore::WebGL2RenderingContext::texImage3D): 23 (WebCore::WebGL2RenderingContext::texSubImage2D): 24 (WebCore::WebGL2RenderingContext::texSubImage3D): 25 (WebCore::WebGL2RenderingContext::getPackPixelStoreParams const): 26 (WebCore::WebGL2RenderingContext::getUnpackPixelStoreParams const): 27 (WebCore::WebGL2RenderingContext::readPixels): 28 * html/canvas/WebGL2RenderingContext.h: 29 * html/canvas/WebGLRenderingContextBase.cpp: 30 (WebCore::WebGLRenderingContextBase::readPixels): 31 * html/canvas/WebGLRenderingContextBase.h: 32 * platform/graphics/ExtensionsGL.h: 33 * platform/graphics/GraphicsContextGL.h: 34 * platform/graphics/angle/ExtensionsGLANGLE.cpp: 35 (WebCore::ExtensionsGLANGLE::readnPixelsRobustANGLE): 36 * platform/graphics/angle/ExtensionsGLANGLE.h: 37 * platform/graphics/angle/GraphicsContextGLANGLE.cpp: 38 (WebCore::GraphicsContextGLOpenGL::readRenderingResults): 39 (WebCore::GraphicsContextGLOpenGL::texImage3D): Deleted. 40 (WebCore::GraphicsContextGLOpenGL::texSubImage3D): Deleted. 41 * platform/graphics/opengl/ExtensionsGLOpenGLCommon.cpp: 42 (WebCore::ExtensionsGLOpenGLCommon::readnPixelsRobustANGLE): 43 * platform/graphics/opengl/ExtensionsGLOpenGLCommon.h: 44 * platform/graphics/opengl/GraphicsContextGLOpenGL.h: 45 * platform/graphics/opengl/GraphicsContextGLOpenGLCommon.cpp: 46 (WebCore::GraphicsContextGLOpenGL::texImage3D): Deleted. 47 (WebCore::GraphicsContextGLOpenGL::texSubImage3D): Deleted. 48 1 49 2020-07-17 James Darpinian <jdarpinian@chromium.org> 2 50 -
trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.cpp
r264535 r264536 146 146 m_uniformBufferOffsetAlignment = getIntParameter(GraphicsContextGL::UNIFORM_BUFFER_OFFSET_ALIGNMENT); 147 147 148 // NEEDS_PORT: set up pack parameters: row length, skip pixels, skip rows 149 148 m_packRowLength = 0; 149 m_packSkipPixels = 0; 150 m_packSkipRows = 0; 150 151 m_unpackRowLength = 0; 151 152 m_unpackImageHeight = 0; … … 457 458 Checked<GCGLuint, RecordOverflow> checkedByteSrcOffset = checkedSrcOffset * checkedElementSize; 458 459 Checked<GCGLuint, RecordOverflow> checkedLength(length); 460 if (!checkedLength.unsafeGet()) { 461 // Default to the remainder of the buffer. 462 checkedLength = data.byteLength(); 463 checkedLength /= elementSize; 464 checkedLength -= srcOffset; 465 } 459 466 Checked<GCGLuint, RecordOverflow> checkedByteLength = checkedLength * checkedElementSize; 460 467 … … 478 485 return; 479 486 } 480 // FIXME: NEEDS_PORT481 // Hook up WebGL 2.0 pack parameters.482 487 switch (pname) { 488 case GraphicsContextGL::PACK_ROW_LENGTH: 489 m_packRowLength = param; 490 break; 491 case GraphicsContextGL::PACK_SKIP_PIXELS: 492 m_packSkipPixels = param; 493 break; 494 case GraphicsContextGL::PACK_SKIP_ROWS: 495 m_packSkipRows = param; 496 break; 483 497 case GraphicsContextGL::UNPACK_ROW_LENGTH: 484 498 m_unpackRowLength = param; … … 1087 1101 return; 1088 1102 1089 m_context-> texImage2D(target, level, internalformat, width, height, border, format, type, reinterpret_cast<void*>(offset));1103 m_context->getExtensions().texImage2DRobustANGLE(target, level, internalformat, width, height, border, format, type, 0, reinterpret_cast<void*>(offset)); 1090 1104 } 1091 1105 … … 1131 1145 return; 1132 1146 1133 m_context-> texImage3D(target, level, internalformat, width, height, depth, border, format, type, reinterpret_cast<void*>(offset));1147 m_context->getExtensions().texImage3DRobustANGLE(target, level, internalformat, width, height, depth, border, format, type, 0, reinterpret_cast<void*>(offset)); 1134 1148 } 1135 1149 … … 1217 1231 return; 1218 1232 1219 m_context-> texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, reinterpret_cast<void*>(offset));1233 m_context->getExtensions().texSubImage2DRobustANGLE(target, level, xoffset, yoffset, width, height, format, type, 0, reinterpret_cast<void*>(offset)); 1220 1234 } 1221 1235 … … 1261 1275 return; 1262 1276 1263 m_context-> texSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, offset);1277 m_context->getExtensions().texSubImage3DRobustANGLE(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, 0, reinterpret_cast<void*>(offset)); 1264 1278 } 1265 1279 … … 2939 2953 { 2940 2954 return m_maxTransformFeedbackSeparateAttribs; 2955 } 2956 2957 GraphicsContextGLOpenGL::PixelStoreParams WebGL2RenderingContext::getPackPixelStoreParams() const 2958 { 2959 GraphicsContextGLOpenGL::PixelStoreParams params; 2960 params.alignment = m_packAlignment; 2961 params.rowLength = m_packRowLength; 2962 params.skipPixels = m_packSkipPixels; 2963 params.skipRows = m_packSkipRows; 2964 return params; 2965 } 2966 2967 GraphicsContextGLOpenGL::PixelStoreParams WebGL2RenderingContext::getUnpackPixelStoreParams(TexImageDimension dimension) const 2968 { 2969 GraphicsContextGLOpenGL::PixelStoreParams params; 2970 params.alignment = m_unpackAlignment; 2971 params.rowLength = m_unpackRowLength; 2972 params.skipPixels = m_unpackSkipPixels; 2973 params.skipRows = m_unpackSkipRows; 2974 if (dimension == TexImageDimension::Tex3D) { 2975 params.imageHeight = m_unpackImageHeight; 2976 params.skipImages = m_unpackSkipImages; 2977 } 2978 return params; 2941 2979 } 2942 2980 … … 3340 3378 } 3341 3379 3380 void WebGL2RenderingContext::readPixels(GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, ArrayBufferView& pixels) 3381 { 3382 if (isContextLostOrPending()) 3383 return; 3384 if (m_boundPixelPackBuffer) { 3385 synthesizeGLError( 3386 GraphicsContextGL::INVALID_OPERATION, "readPixels", 3387 "a buffer is bound to PIXEL_PACK_BUFFER"); 3388 return; 3389 } 3390 WebGLRenderingContextBase::readPixels(x, y, width, height, format, type, pixels); 3391 } 3392 3342 3393 void WebGL2RenderingContext::readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLintptr offset) 3343 3394 { 3344 UNUSED_PARAM(x); 3345 UNUSED_PARAM(y); 3346 UNUSED_PARAM(width); 3347 UNUSED_PARAM(height); 3348 UNUSED_PARAM(format); 3349 UNUSED_PARAM(type); 3350 UNUSED_PARAM(offset); 3351 3352 LOG(WebGL, "[[ NOT IMPLEMENTED ]] readPixels()"); 3395 if (isContextLostOrPending()) 3396 return; 3397 if (!m_boundPixelPackBuffer) { 3398 synthesizeGLError( 3399 GraphicsContextGL::INVALID_OPERATION, "readPixels", 3400 "no buffer is bound to PIXEL_PACK_BUFFER"); 3401 return; 3402 } 3403 if (offset < 0) { 3404 synthesizeGLError(GraphicsContextGL::INVALID_VALUE, "readPixels", "negative offset"); 3405 return; 3406 } 3407 if (type == GraphicsContextGL::UNSIGNED_INT_24_8) { 3408 // This type is always invalid for readbacks in WebGL. 3409 synthesizeGLError(GraphicsContextGL::INVALID_ENUM, "readPixels", "invalid type UNSIGNED_INT_24_8"); 3410 return; 3411 } 3412 3413 // Due to WebGL's same-origin restrictions, it is not possible to 3414 // taint the origin using the WebGL API. 3415 ASSERT(canvasBase().originClean()); 3416 3417 clearIfComposited(); 3418 3419 GLsizei length, columns, rows; 3420 m_context->getExtensions().readnPixelsRobustANGLE(x, y, width, height, format, type, 0, &length, &columns, &rows, reinterpret_cast<uint8_t*>(offset), true); 3353 3421 } 3354 3422 3355 3423 void WebGL2RenderingContext::readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, ArrayBufferView& dstData, GLuint dstOffset) 3356 3424 { 3357 UNUSED_PARAM(x); 3358 UNUSED_PARAM(y); 3359 UNUSED_PARAM(width); 3360 UNUSED_PARAM(height); 3361 UNUSED_PARAM(format); 3362 UNUSED_PARAM(type); 3363 UNUSED_PARAM(dstData); 3364 UNUSED_PARAM(dstOffset); 3365 3366 LOG(WebGL, "[[ NOT IMPLEMENTED ]] readPixels(ArrayBufferView)"); 3425 if (isContextLostOrPending()) 3426 return; 3427 if (m_boundPixelPackBuffer) { 3428 synthesizeGLError( 3429 GraphicsContextGL::INVALID_OPERATION, "readPixels", 3430 "a buffer is bound to PIXEL_PACK_BUFFER"); 3431 return; 3432 } 3433 auto slice = sliceArrayBufferView("readPixels", dstData, dstOffset, 0); 3434 if (!slice) 3435 return; 3436 WebGLRenderingContextBase::readPixels(x, y, width, height, format, type, *slice); 3367 3437 } 3368 3438 -
trunk/Source/WebCore/html/canvas/WebGL2RenderingContext.h
r264377 r264536 251 251 WebGLAny getParameter(GCGLenum pname) final; 252 252 253 using WebGLRenderingContextBase::readPixels; 253 // Must override the WebGL 1.0 signature in order to add extra validation. 254 void readPixels(GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, ArrayBufferView& pixels) override; 254 255 void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLintptr offset); 255 256 void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, ArrayBufferView& dstData, GLuint dstOffset); … … 258 259 void hint(GCGLenum target, GCGLenum mode) final; 259 260 GCGLuint maxTransformFeedbackSeparateAttribs() const; 261 262 GraphicsContextGLOpenGL::PixelStoreParams getPackPixelStoreParams() const override; 263 GraphicsContextGLOpenGL::PixelStoreParams getUnpackPixelStoreParams(TexImageDimension) const override; 260 264 261 265 private: … … 330 334 Vector<RefPtr<WebGLSampler>> m_boundSamplers; 331 335 336 GCGLint m_packRowLength { 0 }; 337 GCGLint m_packSkipPixels { 0 }; 338 GCGLint m_packSkipRows { 0 }; 332 339 GCGLint m_unpackSkipPixels { 0 }; 333 340 GCGLint m_unpackSkipRows { 0 }; -
trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
r264509 r264536 4223 4223 unsigned padding = 0; 4224 4224 if (!m_isRobustnessEXTSupported) { 4225 GCGLenum error = m_context->computeImageSizeInBytes(format, type, width, height, 1, getPackPixelStoreParams(), &totalBytesRequired, &padding, nullptr); // NEEDS_PORT4225 GCGLenum error = m_context->computeImageSizeInBytes(format, type, width, height, 1, getPackPixelStoreParams(), &totalBytesRequired, &padding, nullptr); 4226 4226 if (error != GraphicsContextGL::NO_ERROR) { 4227 4227 synthesizeGLError(error, "readPixels", "invalid dimensions"); … … 4241 4241 GLsizei length, columns, rows; 4242 4242 m_context->makeContextCurrent(); 4243 m_context->getExtensions().readnPixelsRobustANGLE(x, y, width, height, format, type, pixels.byteLength(), &length, &columns, &rows, data );4243 m_context->getExtensions().readnPixelsRobustANGLE(x, y, width, height, format, type, pixels.byteLength(), &length, &columns, &rows, data, false); 4244 4244 #else 4245 4245 if (m_isRobustnessEXTSupported) -
trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h
r264535 r264536 241 241 #endif 242 242 void polygonOffset(GCGLfloat factor, GCGLfloat units); 243 void readPixels(GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, ArrayBufferView& pixels); 243 // This must be virtual so more validation can be added in WebGL 2.0. 244 virtual void readPixels(GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, ArrayBufferView& pixels); 244 245 void releaseShaderCompiler(); 245 246 virtual void renderbufferStorage(GCGLenum target, GCGLenum internalformat, GCGLsizei width, GCGLsizei height) = 0; … … 1044 1045 template <typename T> unsigned getMaxIndex(const RefPtr<JSC::ArrayBuffer> elementArrayBuffer, GCGLintptr uoffset, GCGLsizei n); 1045 1046 1047 bool validateArrayBufferType(const char* functionName, GCGLenum type, Optional<JSC::TypedArrayType>); 1048 1046 1049 private: 1047 1050 void scheduleTaskToDispatchContextLostEvent(); … … 1049 1052 void maybeRestoreContext(); 1050 1053 1051 bool validateArrayBufferType(const char* functionName, GCGLenum type, Optional<JSC::TypedArrayType>);1052 1054 void registerWithWebGLStateTracker(); 1053 1055 void checkForContextLossHandling(); -
trunk/Source/WebCore/platform/graphics/ExtensionsGL.h
r259139 r264536 360 360 361 361 virtual void getPointervRobustANGLERobustANGLE(GCGLenum pname, GCGLsizei bufSize, GCGLsizei *length, void **params) = 0; 362 virtual void readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data ) = 0;362 virtual void readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data, bool readingToPixelBufferObject) = 0; 363 363 virtual void getnUniformfvRobustANGLE(GCGLuint program, int location, GCGLsizei bufSize, GCGLsizei *length, GCGLfloat *params) = 0; 364 364 virtual void getnUniformivRobustANGLE(GCGLuint program, int location, GCGLsizei bufSize, GCGLsizei *length, GCGLint *params) = 0; -
trunk/Source/WebCore/platform/graphics/GraphicsContextGL.h
r264535 r264536 1157 1157 virtual void texStorage3D(GCGLenum target, GCGLsizei levels, GCGLenum internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth) = 0; 1158 1158 1159 virtual void texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, GCGLintptr pboOffset) = 0; 1160 virtual void texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* pixels) = 0; 1161 virtual void texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset) = 0; 1162 1163 virtual void texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, GCGLintptr pboOffset) = 0; 1164 virtual void texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset) = 0; 1159 // tex{Sub}Image3D are supported only via ANGLE_robust_client_memory. 1165 1160 1166 1161 virtual void copyTexSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height) = 0; … … 1248 1243 virtual void uniformBlockBinding(PlatformGLObject program, GCGLuint uniformBlockIndex, GCGLuint uniformBlockBinding) = 0; 1249 1244 1250 virtual void texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLintptr pboOffset) = 0;1251 virtual void texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset) = 0;1245 // texSubImage2D with pixel pack buffer, and srcData+offset, are 1246 // supported only via ANGLE_robust_client_memory. 1252 1247 1253 1248 virtual void compressedTexImage2D(GCGLenum target, GCGLint level, GCGLenum internalformat, GCGLsizei width, GCGLsizei height, GCGLint border, GCGLsizei imageSize, GCGLintptr offset) = 0; -
trunk/Source/WebCore/platform/graphics/angle/ExtensionsGLANGLE.cpp
r263281 r264536 580 580 #endif 581 581 582 void ExtensionsGLANGLE::readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data )582 void ExtensionsGLANGLE::readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data, bool readingToPixelBufferObject) 583 583 { 584 584 m_context->makeContextCurrent(); … … 608 608 609 609 #if PLATFORM(MAC) 610 if (! attrs.alpha && (format == GraphicsContextGL::RGBA || format == GraphicsContextGL::BGRA) && (state.boundReadFBO == m_context->m_fbo || (attrs.antialias && state.boundReadFBO == m_context->m_multisampleFBO)))610 if (!readingToPixelBufferObject && !attrs.alpha && (format == GraphicsContextGL::RGBA || format == GraphicsContextGL::BGRA) && (state.boundReadFBO == m_context->m_fbo || (attrs.antialias && state.boundReadFBO == m_context->m_multisampleFBO))) 611 611 wipeAlphaChannelFromPixels(width, height, static_cast<unsigned char*>(data)); 612 #else 613 UNUSED_PARAM(readingToPixelBufferObject); 612 614 #endif 613 615 } -
trunk/Source/WebCore/platform/graphics/angle/ExtensionsGLANGLE.h
r261769 r264536 131 131 132 132 void getPointervRobustANGLERobustANGLE(GCGLenum pname, GCGLsizei bufSize, GCGLsizei *length, void **params) override; 133 void readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data ) override;133 void readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data, bool readingToPixelBufferObject) override; 134 134 void getnUniformfvRobustANGLE(GCGLuint program, int location, GCGLsizei bufSize, GCGLsizei *length, GCGLfloat *params) override; 135 135 void getnUniformivRobustANGLE(GCGLuint program, int location, GCGLsizei bufSize, GCGLsizei *length, GCGLint *params) override; -
trunk/Source/WebCore/platform/graphics/angle/GraphicsContextGLANGLE.cpp
r264535 r264536 602 602 mustRestorePackAlignment = true; 603 603 } 604 GLint packRowLength = 0; 605 GLint packSkipRows = 0; 606 GLint packSkipPixels = 0; 607 ScopedResetBufferBinding scopedPixelPackBufferReset(m_isForWebGL2, GL_PIXEL_PACK_BUFFER_BINDING, GL_PIXEL_PACK_BUFFER); 608 if (m_isForWebGL2) { 609 gl::GetIntegerv(GL_PACK_ROW_LENGTH, &packRowLength); 610 if (packRowLength > 0) 611 gl::PixelStorei(GL_PACK_ROW_LENGTH, 0); 612 gl::GetIntegerv(GL_PACK_SKIP_ROWS, &packSkipRows); 613 if (packSkipRows > 0) 614 gl::PixelStorei(GL_PACK_SKIP_ROWS, 0); 615 gl::GetIntegerv(GL_PACK_SKIP_PIXELS, &packSkipPixels); 616 if (packSkipPixels > 0) 617 gl::PixelStorei(GL_PACK_SKIP_PIXELS, 0); 618 } 604 619 605 620 readPixelsAndConvertToBGRAIfNecessary(0, 0, m_currentWidth, m_currentHeight, pixels); … … 607 622 if (mustRestorePackAlignment) 608 623 gl::PixelStorei(GL_PACK_ALIGNMENT, packAlignment); 624 if (packRowLength > 0) 625 gl::PixelStorei(GL_PACK_ROW_LENGTH, packRowLength); 626 if (packSkipRows > 0) 627 gl::PixelStorei(GL_PACK_SKIP_ROWS, packSkipRows); 628 if (packSkipPixels > 0) 629 gl::PixelStorei(GL_PACK_SKIP_PIXELS, packSkipPixels); 609 630 610 631 if (mustRestoreFBO) … … 2146 2167 } 2147 2168 2148 void GraphicsContextGLOpenGL::texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, GCGLintptr pboOffset)2149 {2150 UNUSED_PARAM(target);2151 UNUSED_PARAM(level);2152 UNUSED_PARAM(internalformat);2153 UNUSED_PARAM(width);2154 UNUSED_PARAM(height);2155 UNUSED_PARAM(depth);2156 UNUSED_PARAM(border);2157 UNUSED_PARAM(format);2158 UNUSED_PARAM(type);2159 UNUSED_PARAM(pboOffset);2160 }2161 2162 void GraphicsContextGLOpenGL::texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* pixels)2163 {2164 UNUSED_PARAM(target);2165 UNUSED_PARAM(level);2166 UNUSED_PARAM(internalformat);2167 UNUSED_PARAM(width);2168 UNUSED_PARAM(height);2169 UNUSED_PARAM(depth);2170 UNUSED_PARAM(border);2171 UNUSED_PARAM(format);2172 UNUSED_PARAM(type);2173 UNUSED_PARAM(pixels);2174 }2175 2176 void GraphicsContextGLOpenGL::texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset)2177 {2178 UNUSED_PARAM(target);2179 UNUSED_PARAM(level);2180 UNUSED_PARAM(internalformat);2181 UNUSED_PARAM(width);2182 UNUSED_PARAM(height);2183 UNUSED_PARAM(depth);2184 UNUSED_PARAM(border);2185 UNUSED_PARAM(format);2186 UNUSED_PARAM(type);2187 UNUSED_PARAM(srcData);2188 UNUSED_PARAM(srcOffset);2189 }2190 2191 void GraphicsContextGLOpenGL::texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, GCGLintptr pboOffset)2192 {2193 UNUSED_PARAM(target);2194 UNUSED_PARAM(level);2195 UNUSED_PARAM(xoffset);2196 UNUSED_PARAM(yoffset);2197 UNUSED_PARAM(zoffset);2198 UNUSED_PARAM(width);2199 UNUSED_PARAM(height);2200 UNUSED_PARAM(depth);2201 UNUSED_PARAM(format);2202 UNUSED_PARAM(type);2203 UNUSED_PARAM(pboOffset);2204 }2205 2206 void GraphicsContextGLOpenGL::texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset)2207 {2208 UNUSED_PARAM(target);2209 UNUSED_PARAM(level);2210 UNUSED_PARAM(xoffset);2211 UNUSED_PARAM(yoffset);2212 UNUSED_PARAM(zoffset);2213 UNUSED_PARAM(width);2214 UNUSED_PARAM(height);2215 UNUSED_PARAM(depth);2216 UNUSED_PARAM(format);2217 UNUSED_PARAM(type);2218 UNUSED_PARAM(srcData);2219 UNUSED_PARAM(srcOffset);2220 }2221 2222 2169 void GraphicsContextGLOpenGL::copyTexSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height) 2223 2170 { … … 2524 2471 gl::GetUniformIndices(program, cstr.size(), cstr.data(), result.data()); 2525 2472 return result; 2526 }2527 2528 void GraphicsContextGLOpenGL::texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLintptr pboOffset)2529 {2530 UNUSED_PARAM(target);2531 UNUSED_PARAM(level);2532 UNUSED_PARAM(xoffset);2533 UNUSED_PARAM(yoffset);2534 UNUSED_PARAM(width);2535 UNUSED_PARAM(height);2536 UNUSED_PARAM(format);2537 UNUSED_PARAM(type);2538 UNUSED_PARAM(pboOffset);2539 }2540 2541 void GraphicsContextGLOpenGL::texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset)2542 {2543 UNUSED_PARAM(target);2544 UNUSED_PARAM(level);2545 UNUSED_PARAM(xoffset);2546 UNUSED_PARAM(yoffset);2547 UNUSED_PARAM(width);2548 UNUSED_PARAM(height);2549 UNUSED_PARAM(format);2550 UNUSED_PARAM(type);2551 UNUSED_PARAM(srcData);2552 UNUSED_PARAM(srcOffset);2553 2473 } 2554 2474 -
trunk/Source/WebCore/platform/graphics/opengl/ExtensionsGLOpenGLCommon.cpp
r259139 r264536 503 503 } 504 504 505 void ExtensionsGLOpenGLCommon::readnPixelsRobustANGLE(int, int, GCGLsizei, GCGLsizei, GCGLenum, GCGLenum, GCGLsizei, GCGLsizei *, GCGLsizei *, GCGLsizei *, void * )505 void ExtensionsGLOpenGLCommon::readnPixelsRobustANGLE(int, int, GCGLsizei, GCGLsizei, GCGLenum, GCGLenum, GCGLsizei, GCGLsizei *, GCGLsizei *, GCGLsizei *, void *, bool) 506 506 { 507 507 m_context->synthesizeGLError(GL_INVALID_OPERATION); -
trunk/Source/WebCore/platform/graphics/opengl/ExtensionsGLOpenGLCommon.h
r259139 r264536 122 122 123 123 void getPointervRobustANGLERobustANGLE(GCGLenum pname, GCGLsizei bufSize, GCGLsizei *length, void **params) override; 124 void readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data ) override;124 void readnPixelsRobustANGLE(int x, int y, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLsizei bufSize, GCGLsizei *length, GCGLsizei *columns, GCGLsizei *rows, void *data, bool readingToPixelBufferObject) override; 125 125 void getnUniformfvRobustANGLE(GCGLuint program, int location, GCGLsizei bufSize, GCGLsizei *length, GCGLfloat *params) override; 126 126 void getnUniformivRobustANGLE(GCGLuint program, int location, GCGLsizei bufSize, GCGLsizei *length, GCGLint *params) override; -
trunk/Source/WebCore/platform/graphics/opengl/GraphicsContextGLOpenGL.h
r264535 r264536 408 408 void texStorage3D(GCGLenum target, GCGLsizei levels, GCGLenum internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth) final; 409 409 410 void texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, GCGLintptr pboOffset) final;411 void texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* pixels) final;412 void texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset) final;413 414 void texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, GCGLintptr pboOffset) final;415 void texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset) final;416 417 410 void copyTexSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height) final; 418 411 … … 497 490 String getActiveUniformBlockName(PlatformGLObject program, GCGLuint uniformBlockIndex) final; 498 491 void uniformBlockBinding(PlatformGLObject program, GCGLuint uniformBlockIndex, GCGLuint uniformBlockBinding) final; 499 500 void texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLintptr pboOffset) final;501 void texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset) final;502 492 503 493 void compressedTexImage2D(GCGLenum target, GCGLint level, GCGLenum internalformat, GCGLsizei width, GCGLsizei height, GCGLint border, GCGLsizei imageSize, GCGLintptr offset) final; -
trunk/Source/WebCore/platform/graphics/opengl/GraphicsContextGLOpenGLCommon.cpp
r264535 r264536 2239 2239 #endif 2240 2240 2241 void GraphicsContextGLOpenGL::texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, GCGLintptr pboOffset)2242 {2243 UNUSED_PARAM(target);2244 UNUSED_PARAM(level);2245 UNUSED_PARAM(internalformat);2246 UNUSED_PARAM(width);2247 UNUSED_PARAM(height);2248 UNUSED_PARAM(depth);2249 UNUSED_PARAM(border);2250 UNUSED_PARAM(format);2251 UNUSED_PARAM(type);2252 UNUSED_PARAM(pboOffset);2253 }2254 2255 void GraphicsContextGLOpenGL::texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* pixels)2256 {2257 UNUSED_PARAM(target);2258 UNUSED_PARAM(level);2259 UNUSED_PARAM(internalformat);2260 UNUSED_PARAM(width);2261 UNUSED_PARAM(height);2262 UNUSED_PARAM(depth);2263 UNUSED_PARAM(border);2264 UNUSED_PARAM(format);2265 UNUSED_PARAM(type);2266 UNUSED_PARAM(pixels);2267 }2268 2269 void GraphicsContextGLOpenGL::texImage3D(GCGLenum target, GCGLint level, GCGLint internalformat, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLint border, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset)2270 {2271 UNUSED_PARAM(target);2272 UNUSED_PARAM(level);2273 UNUSED_PARAM(internalformat);2274 UNUSED_PARAM(width);2275 UNUSED_PARAM(height);2276 UNUSED_PARAM(depth);2277 UNUSED_PARAM(border);2278 UNUSED_PARAM(format);2279 UNUSED_PARAM(type);2280 UNUSED_PARAM(srcData);2281 UNUSED_PARAM(srcOffset);2282 }2283 2284 void GraphicsContextGLOpenGL::texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, GCGLintptr pboOffset)2285 {2286 UNUSED_PARAM(target);2287 UNUSED_PARAM(level);2288 UNUSED_PARAM(xoffset);2289 UNUSED_PARAM(yoffset);2290 UNUSED_PARAM(zoffset);2291 UNUSED_PARAM(width);2292 UNUSED_PARAM(height);2293 UNUSED_PARAM(depth);2294 UNUSED_PARAM(format);2295 UNUSED_PARAM(type);2296 UNUSED_PARAM(pboOffset);2297 }2298 2299 void GraphicsContextGLOpenGL::texSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLsizei width, GCGLsizei height, GCGLsizei depth, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset)2300 {2301 UNUSED_PARAM(target);2302 UNUSED_PARAM(level);2303 UNUSED_PARAM(xoffset);2304 UNUSED_PARAM(yoffset);2305 UNUSED_PARAM(zoffset);2306 UNUSED_PARAM(width);2307 UNUSED_PARAM(height);2308 UNUSED_PARAM(depth);2309 UNUSED_PARAM(format);2310 UNUSED_PARAM(type);2311 UNUSED_PARAM(srcData);2312 UNUSED_PARAM(srcOffset);2313 }2314 2315 2241 void GraphicsContextGLOpenGL::copyTexSubImage3D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLint zoffset, GCGLint x, GCGLint y, GCGLsizei width, GCGLsizei height) 2316 2242 { … … 2813 2739 } 2814 2740 #endif 2815 2816 void GraphicsContextGLOpenGL::texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, GCGLintptr pboOffset)2817 {2818 UNUSED_PARAM(target);2819 UNUSED_PARAM(level);2820 UNUSED_PARAM(xoffset);2821 UNUSED_PARAM(yoffset);2822 UNUSED_PARAM(width);2823 UNUSED_PARAM(height);2824 UNUSED_PARAM(format);2825 UNUSED_PARAM(type);2826 UNUSED_PARAM(pboOffset);2827 }2828 2829 void GraphicsContextGLOpenGL::texSubImage2D(GCGLenum target, GCGLint level, GCGLint xoffset, GCGLint yoffset, GCGLsizei width, GCGLsizei height, GCGLenum format, GCGLenum type, const void* srcData, GCGLuint srcOffset)2830 {2831 UNUSED_PARAM(target);2832 UNUSED_PARAM(level);2833 UNUSED_PARAM(xoffset);2834 UNUSED_PARAM(yoffset);2835 UNUSED_PARAM(width);2836 UNUSED_PARAM(height);2837 UNUSED_PARAM(format);2838 UNUSED_PARAM(type);2839 UNUSED_PARAM(srcData);2840 UNUSED_PARAM(srcOffset);2841 }2842 2741 2843 2742 void GraphicsContextGLOpenGL::compressedTexImage2D(GCGLenum target, GCGLint level, GCGLenum internalformat, GCGLsizei width, GCGLsizei height, GCGLint border, GCGLsizei imageSize, GCGLintptr offset)
Note: See TracChangeset
for help on using the changeset viewer.