| Index: third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
|
| diff --git a/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp b/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
|
| index f77eba72feb7a75104d9911d9fa369fad71493af..dfeb5bd1cbbb4f08fd12e844b9ada59ebd54b460 100644
|
| --- a/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
|
| +++ b/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
|
| @@ -2412,7 +2412,8 @@ void WebGL2RenderingContextBase::uniform1fv(
|
| 1, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform1fv(location->location(), v.length(),
|
| + contextGL()->Uniform1fv(location->location(),
|
| + srcLength ? srcLength : (v.length() - srcOffset),
|
| v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| @@ -2426,7 +2427,9 @@ void WebGL2RenderingContextBase::uniform1fv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform1fv(location->location(), v.size(), v.data() + srcOffset);
|
| + contextGL()->Uniform1fv(location->location(),
|
| + srcLength ? srcLength : (v.size() - srcOffset),
|
| + v.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform2fv(
|
| @@ -2439,8 +2442,10 @@ void WebGL2RenderingContextBase::uniform2fv(
|
| 2, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform2fv(location->location(), v.length() >> 1,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform2fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) >> 1,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform2fv(
|
| @@ -2453,7 +2458,8 @@ void WebGL2RenderingContextBase::uniform2fv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform2fv(location->location(), v.size() >> 1,
|
| + contextGL()->Uniform2fv(location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) >> 1,
|
| v.data() + srcOffset);
|
| }
|
|
|
| @@ -2467,8 +2473,10 @@ void WebGL2RenderingContextBase::uniform3fv(
|
| 3, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform3fv(location->location(), v.length() / 3,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform3fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) / 3,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform3fv(
|
| @@ -2481,7 +2489,8 @@ void WebGL2RenderingContextBase::uniform3fv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform3fv(location->location(), v.size() / 3,
|
| + contextGL()->Uniform3fv(location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) / 3,
|
| v.data() + srcOffset);
|
| }
|
|
|
| @@ -2495,8 +2504,10 @@ void WebGL2RenderingContextBase::uniform4fv(
|
| 4, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform4fv(location->location(), v.length() >> 2,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform4fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) >> 2,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform4fv(
|
| @@ -2509,7 +2520,8 @@ void WebGL2RenderingContextBase::uniform4fv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform4fv(location->location(), v.size() >> 2,
|
| + contextGL()->Uniform4fv(location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) >> 2,
|
| v.data() + srcOffset);
|
| }
|
|
|
| @@ -2523,7 +2535,8 @@ void WebGL2RenderingContextBase::uniform1iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform1iv(location->location(), v.length(),
|
| + contextGL()->Uniform1iv(location->location(),
|
| + srcLength ? srcLength : (v.length() - srcOffset),
|
| v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| @@ -2537,7 +2550,9 @@ void WebGL2RenderingContextBase::uniform1iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform1iv(location->location(), v.size(), v.data() + srcOffset);
|
| + contextGL()->Uniform1iv(location->location(),
|
| + srcLength ? srcLength : (v.size() - srcOffset),
|
| + v.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform2iv(
|
| @@ -2550,8 +2565,10 @@ void WebGL2RenderingContextBase::uniform2iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform2iv(location->location(), v.length() >> 1,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform2iv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) >> 1,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform2iv(
|
| @@ -2564,7 +2581,8 @@ void WebGL2RenderingContextBase::uniform2iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform2iv(location->location(), v.size() >> 1,
|
| + contextGL()->Uniform2iv(location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) >> 1,
|
| v.data() + srcOffset);
|
| }
|
|
|
| @@ -2578,8 +2596,10 @@ void WebGL2RenderingContextBase::uniform3iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform3iv(location->location(), v.length() / 3,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform3iv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) / 3,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform3iv(
|
| @@ -2592,7 +2612,8 @@ void WebGL2RenderingContextBase::uniform3iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform3iv(location->location(), v.size() / 3,
|
| + contextGL()->Uniform3iv(location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) / 3,
|
| v.data() + srcOffset);
|
| }
|
|
|
| @@ -2606,8 +2627,10 @@ void WebGL2RenderingContextBase::uniform4iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform4iv(location->location(), v.length() >> 2,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform4iv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) >> 2,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform4iv(
|
| @@ -2620,7 +2643,8 @@ void WebGL2RenderingContextBase::uniform4iv(
|
| srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform4iv(location->location(), v.size() >> 2,
|
| + contextGL()->Uniform4iv(location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) >> 2,
|
| v.data() + srcOffset);
|
| }
|
|
|
| @@ -2634,7 +2658,8 @@ void WebGL2RenderingContextBase::uniform1uiv(
|
| 1, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform1uiv(location->location(), v.length(),
|
| + contextGL()->Uniform1uiv(location->location(),
|
| + srcLength ? srcLength : (v.length() - srcOffset),
|
| v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| @@ -2648,7 +2673,8 @@ void WebGL2RenderingContextBase::uniform1uiv(
|
| value.size(), 1, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform1uiv(location->location(), value.size(),
|
| + contextGL()->Uniform1uiv(location->location(),
|
| + srcLength ? srcLength : (value.size() - srcOffset),
|
| value.data() + srcOffset);
|
| }
|
|
|
| @@ -2662,8 +2688,10 @@ void WebGL2RenderingContextBase::uniform2uiv(
|
| 2, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform2uiv(location->location(), v.length() >> 1,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform2uiv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) >> 1,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform2uiv(
|
| @@ -2676,8 +2704,10 @@ void WebGL2RenderingContextBase::uniform2uiv(
|
| value.size(), 2, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform2uiv(location->location(), value.size() / 2,
|
| - value.data() + srcOffset);
|
| + contextGL()->Uniform2uiv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) >> 1,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform3uiv(
|
| @@ -2690,8 +2720,10 @@ void WebGL2RenderingContextBase::uniform3uiv(
|
| 3, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform3uiv(location->location(), v.length() / 3,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform3uiv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) / 3,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform3uiv(
|
| @@ -2704,8 +2736,10 @@ void WebGL2RenderingContextBase::uniform3uiv(
|
| value.size(), 3, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform3uiv(location->location(), value.size() / 3,
|
| - value.data() + srcOffset);
|
| + contextGL()->Uniform3uiv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) / 3,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform4uiv(
|
| @@ -2718,8 +2752,10 @@ void WebGL2RenderingContextBase::uniform4uiv(
|
| 4, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform4uiv(location->location(), v.length() >> 2,
|
| - v.dataMaybeOnStack() + srcOffset);
|
| + contextGL()->Uniform4uiv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.length() - srcOffset)) >> 2,
|
| + v.dataMaybeOnStack() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform4uiv(
|
| @@ -2732,8 +2768,10 @@ void WebGL2RenderingContextBase::uniform4uiv(
|
| value.size(), 4, srcOffset, srcLength))
|
| return;
|
|
|
| - contextGL()->Uniform4uiv(location->location(), value.size() / 4,
|
| - value.data() + srcOffset);
|
| + contextGL()->Uniform4uiv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) >> 2,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix2fv(
|
| @@ -2746,8 +2784,10 @@ void WebGL2RenderingContextBase::uniformMatrix2fv(
|
| !validateUniformMatrixParameters("uniformMatrix2fv", location, transpose,
|
| v, 4, srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix2fv(location->location(), v->length() >> 2,
|
| - transpose, v->data() + srcOffset);
|
| + contextGL()->UniformMatrix2fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v->length() - srcOffset)) >> 2, transpose,
|
| + v->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix2fv(
|
| @@ -2761,8 +2801,10 @@ void WebGL2RenderingContextBase::uniformMatrix2fv(
|
| v.data(), v.size(), 4, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix2fv(location->location(), v.size() >> 2, transpose,
|
| - v.data() + srcOffset);
|
| + contextGL()->UniformMatrix2fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) >> 2, transpose,
|
| + v.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix3fv(
|
| @@ -2775,8 +2817,10 @@ void WebGL2RenderingContextBase::uniformMatrix3fv(
|
| !validateUniformMatrixParameters("uniformMatrix3fv", location, transpose,
|
| v, 9, srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix3fv(location->location(), v->length() / 9,
|
| - transpose, v->data() + srcOffset);
|
| + contextGL()->UniformMatrix3fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v->length() - srcOffset)) / 9, transpose,
|
| + v->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix3fv(
|
| @@ -2790,8 +2834,10 @@ void WebGL2RenderingContextBase::uniformMatrix3fv(
|
| v.data(), v.size(), 9, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix3fv(location->location(), v.size() / 9, transpose,
|
| - v.data() + srcOffset);
|
| + contextGL()->UniformMatrix3fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) / 9, transpose,
|
| + v.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix4fv(
|
| @@ -2804,8 +2850,10 @@ void WebGL2RenderingContextBase::uniformMatrix4fv(
|
| !validateUniformMatrixParameters("uniformMatrix4fv", location, transpose,
|
| v, 16, srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix4fv(location->location(), v->length() >> 4,
|
| - transpose, v->data() + srcOffset);
|
| + contextGL()->UniformMatrix4fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v->length() - srcOffset)) >> 4, transpose,
|
| + v->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix4fv(
|
| @@ -2819,8 +2867,10 @@ void WebGL2RenderingContextBase::uniformMatrix4fv(
|
| v.data(), v.size(), 16, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix4fv(location->location(), v.size() >> 4, transpose,
|
| - v.data() + srcOffset);
|
| + contextGL()->UniformMatrix4fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (v.size() - srcOffset)) >> 4, transpose,
|
| + v.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix2x3fv(
|
| @@ -2834,8 +2884,10 @@ void WebGL2RenderingContextBase::uniformMatrix2x3fv(
|
| transpose, value, 6, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix2x3fv(location->location(), value->length() / 6,
|
| - transpose, value->data() + srcOffset);
|
| + contextGL()->UniformMatrix2x3fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value->length() - srcOffset)) / 6, transpose,
|
| + value->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix2x3fv(
|
| @@ -2849,8 +2901,10 @@ void WebGL2RenderingContextBase::uniformMatrix2x3fv(
|
| transpose, value.data(), value.size(), 6,
|
| srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix2x3fv(location->location(), value.size() / 6,
|
| - transpose, value.data() + srcOffset);
|
| + contextGL()->UniformMatrix2x3fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) / 6, transpose,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix3x2fv(
|
| @@ -2864,8 +2918,10 @@ void WebGL2RenderingContextBase::uniformMatrix3x2fv(
|
| transpose, value, 6, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix3x2fv(location->location(), value->length() / 6,
|
| - transpose, value->data() + srcOffset);
|
| + contextGL()->UniformMatrix3x2fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value->length() - srcOffset)) / 6, transpose,
|
| + value->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix3x2fv(
|
| @@ -2879,8 +2935,10 @@ void WebGL2RenderingContextBase::uniformMatrix3x2fv(
|
| transpose, value.data(), value.size(), 6,
|
| srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix3x2fv(location->location(), value.size() / 6,
|
| - transpose, value.data() + srcOffset);
|
| + contextGL()->UniformMatrix3x2fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) / 6, transpose,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix2x4fv(
|
| @@ -2894,8 +2952,10 @@ void WebGL2RenderingContextBase::uniformMatrix2x4fv(
|
| transpose, value, 8, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix2x4fv(location->location(), value->length() / 8,
|
| - transpose, value->data() + srcOffset);
|
| + contextGL()->UniformMatrix2x4fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value->length() - srcOffset)) >> 3, transpose,
|
| + value->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix2x4fv(
|
| @@ -2909,8 +2969,10 @@ void WebGL2RenderingContextBase::uniformMatrix2x4fv(
|
| transpose, value.data(), value.size(), 8,
|
| srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix2x4fv(location->location(), value.size() / 8,
|
| - transpose, value.data() + srcOffset);
|
| + contextGL()->UniformMatrix2x4fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) >> 3, transpose,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix4x2fv(
|
| @@ -2924,8 +2986,10 @@ void WebGL2RenderingContextBase::uniformMatrix4x2fv(
|
| transpose, value, 8, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix4x2fv(location->location(), value->length() / 8,
|
| - transpose, value->data() + srcOffset);
|
| + contextGL()->UniformMatrix4x2fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value->length() - srcOffset)) >> 3, transpose,
|
| + value->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix4x2fv(
|
| @@ -2939,8 +3003,10 @@ void WebGL2RenderingContextBase::uniformMatrix4x2fv(
|
| transpose, value.data(), value.size(), 8,
|
| srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix4x2fv(location->location(), value.size() / 8,
|
| - transpose, value.data() + srcOffset);
|
| + contextGL()->UniformMatrix4x2fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) >> 3, transpose,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix3x4fv(
|
| @@ -2954,8 +3020,10 @@ void WebGL2RenderingContextBase::uniformMatrix3x4fv(
|
| transpose, value, 12, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix3x4fv(location->location(), value->length() / 12,
|
| - transpose, value->data() + srcOffset);
|
| + contextGL()->UniformMatrix3x4fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value->length() - srcOffset)) / 12, transpose,
|
| + value->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix3x4fv(
|
| @@ -2969,8 +3037,10 @@ void WebGL2RenderingContextBase::uniformMatrix3x4fv(
|
| transpose, value.data(), value.size(),
|
| 12, srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix3x4fv(location->location(), value.size() / 12,
|
| - transpose, value.data() + srcOffset);
|
| + contextGL()->UniformMatrix3x4fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) / 12, transpose,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix4x3fv(
|
| @@ -2984,8 +3054,10 @@ void WebGL2RenderingContextBase::uniformMatrix4x3fv(
|
| transpose, value, 12, srcOffset,
|
| srcLength))
|
| return;
|
| - contextGL()->UniformMatrix4x3fv(location->location(), value->length() / 12,
|
| - transpose, value->data() + srcOffset);
|
| + contextGL()->UniformMatrix4x3fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value->length() - srcOffset)) / 12, transpose,
|
| + value->data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniformMatrix4x3fv(
|
| @@ -2999,8 +3071,10 @@ void WebGL2RenderingContextBase::uniformMatrix4x3fv(
|
| transpose, value.data(), value.size(),
|
| 12, srcOffset, srcLength))
|
| return;
|
| - contextGL()->UniformMatrix4x3fv(location->location(), value.size() / 12,
|
| - transpose, value.data() + srcOffset);
|
| + contextGL()->UniformMatrix4x3fv(
|
| + location->location(),
|
| + (srcLength ? srcLength : (value.size() - srcOffset)) / 12, transpose,
|
| + value.data() + srcOffset);
|
| }
|
|
|
| void WebGL2RenderingContextBase::uniform1fv(
|
|
|