Title: [145454] branches/chromium/1410/Source/WebCore/html/canvas/WebGLRenderingContext.cpp
Revision
145454
Author
[email protected]
Date
2013-03-11 18:17:27 -0700 (Mon, 11 Mar 2013)

Log Message

Merge 144241
BUG=177873
Review URL: https://codereview.chromium.org/12667022

Modified Paths

Diff

Modified: branches/chromium/1410/Source/WebCore/html/canvas/WebGLRenderingContext.cpp (145453 => 145454)


--- branches/chromium/1410/Source/WebCore/html/canvas/WebGLRenderingContext.cpp	2013-03-12 01:15:57 UTC (rev 145453)
+++ branches/chromium/1410/Source/WebCore/html/canvas/WebGLRenderingContext.cpp	2013-03-12 01:17:27 UTC (rev 145454)
@@ -3708,6 +3708,10 @@
     Vector<uint8_t> data;
     if (!pixels)
         return;
+    if (!validateTexFuncFormatAndType("texImage2D", format, type, level))
+        return;
+    if (!validateSettableTexFormat("texImage2D", format))
+        return;
     bool needConversion = true;
     // The data from ImageData is always of format RGBA8.
     // No conversion is needed if destination format is RGBA and type is USIGNED_BYTE and no Flip or Premultiply operation is required.
@@ -3756,6 +3760,10 @@
         ec = SECURITY_ERR;
         return;
     }
+    if (!validateTexFuncFormatAndType("texImage2D", format, type, level))
+        return;
+    if (!validateSettableTexFormat("texImage2D", format))
+        return;
 
     WebGLTexture* texture = validateTextureBinding("texImage2D", target, true);
     // If possible, copy from the canvas element directly to the texture
@@ -3897,6 +3905,10 @@
     ec = 0;
     if (isContextLost())
         return;
+    if (!validateTexFuncFormatAndType("texSubImage2D", format, type, level))
+        return;
+    if (!validateSettableTexFormat("texSubImage2D", format))
+        return;
     Vector<uint8_t> data;
     GraphicsContext3D::ImageExtractor imageExtractor(image, domSource, premultiplyAlpha, m_unpackColorspaceConversion == GraphicsContext3D::NONE);  
     if (!imageExtractor.extractSucceeded()) {
@@ -3958,6 +3970,10 @@
         return;
     if (!pixels)
         return;
+    if (!validateTexFuncFormatAndType("texSubImage2D", format, type, level))
+        return;
+    if (!validateSettableTexFormat("texSubImage2D", format))
+        return;
     Vector<uint8_t> data;
     bool needConversion = true;
     // The data from ImageData is always of format RGBA8.
@@ -4006,6 +4022,10 @@
         ec = SECURITY_ERR;
         return;
     }
+    if (!validateTexFuncFormatAndType("texSubImage2D", format, type, level))
+        return;
+    if (!validateSettableTexFormat("texSubImage2D", format))
+        return;
     RefPtr<ImageData> imageData = canvas->getImageData();
     if (imageData)
         texSubImage2D(target, level, xoffset, yoffset, format, type, imageData.get(), ec);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to