Title: [145334] trunk/Source/WebCore
- Revision
- 145334
- Author
- commit-qu...@webkit.org
- Date
- 2013-03-10 15:37:37 -0700 (Sun, 10 Mar 2013)
Log Message
Conformance Test 1.0.3 (Beta) function: bufferData undefined value failed.
https://bugs.webkit.org/show_bug.cgi?id=111641
Patch by Jason Anderssen <janders...@gmail.com> on 2013-03-10
Reviewed by Dean Jackson.
The WebGL specification requires that a size of 0 is not valid. In _javascript_, passing in undefined
as a parameter to a long long is the same as passing in 0, so we must check for this incorrect
value and fail.
The test suite in Kronos 1.0.3 failed, test to verify conformance is as follows:
https://www.khronos.org/registry/webgl/sdk/tests/conformance/more/functions/bufferDataBadArgs.html.
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::bufferData):
Synthesize error and returned if size is 0.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (145333 => 145334)
--- trunk/Source/WebCore/ChangeLog 2013-03-10 21:00:46 UTC (rev 145333)
+++ trunk/Source/WebCore/ChangeLog 2013-03-10 22:37:37 UTC (rev 145334)
@@ -1,3 +1,20 @@
+2013-03-10 Jason Anderssen <janders...@gmail.com>
+
+ Conformance Test 1.0.3 (Beta) function: bufferData undefined value failed.
+ https://bugs.webkit.org/show_bug.cgi?id=111641
+
+ Reviewed by Dean Jackson.
+
+ The WebGL specification requires that a size of 0 is not valid. In _javascript_, passing in undefined
+ as a parameter to a long long is the same as passing in 0, so we must check for this incorrect
+ value and fail.
+ The test suite in Kronos 1.0.3 failed, test to verify conformance is as follows:
+ https://www.khronos.org/registry/webgl/sdk/tests/conformance/more/functions/bufferDataBadArgs.html.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::bufferData):
+ Synthesize error and returned if size is 0.
+
2013-03-10 Andreas Kling <akl...@apple.com>
SVGDocumentExtensions should use OwnPtr for pending resource maps.
Modified: trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp (145333 => 145334)
--- trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp 2013-03-10 21:00:46 UTC (rev 145333)
+++ trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp 2013-03-10 22:37:37 UTC (rev 145334)
@@ -1111,6 +1111,10 @@
synthesizeGLError(GraphicsContext3D::INVALID_VALUE, "bufferData", "size < 0");
return;
}
+ if (!size) {
+ synthesizeGLError(GraphicsContext3D::INVALID_VALUE, "bufferData", "size == 0");
+ return;
+ }
if (!isErrorGeneratedOnOutOfBoundsAccesses()) {
if (!buffer->associateBufferData(static_cast<GC3Dsizeiptr>(size))) {
synthesizeGLError(GraphicsContext3D::INVALID_VALUE, "bufferData", "invalid buffer");
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes