Correct incorrect assertion
authoroliver@apple.com <oliver@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 3 Mar 2008 08:17:08 +0000 (08:17 +0000)
committeroliver@apple.com <oliver@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 3 Mar 2008 08:17:08 +0000 (08:17 +0000)
Reviewed by Mark Rowe

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30710 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/fast/canvas/canvas-putImageData.js
WebCore/ChangeLog
WebCore/platform/graphics/cg/ImageBufferCG.cpp

index 444b4b7..6282593 100644 (file)
@@ -1,3 +1,11 @@
+2008-03-03  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        Test case for incorrect assertions
+
+        * fast/canvas/canvas-putImageData.js:
+
 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
 
         Reviewed by Dave Hyatt.
 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
 
         Reviewed by Dave Hyatt.
index c56f4bc..c8f65c1 100644 (file)
@@ -221,4 +221,17 @@ shouldThrow("context.putImageData(buffer, 0, 0, 0, undefined, 0, 0)", "'Error: I
 shouldThrow("context.putImageData(buffer, 0, 0, 0, 0, undefined, 0)", "'Error: INDEX_SIZE_ERR: DOM Exception 1'");
 shouldThrow("context.putImageData(buffer, 0, 0, 0, 0, 0, undefined)", "'Error: INDEX_SIZE_ERR: DOM Exception 1'");
 
 shouldThrow("context.putImageData(buffer, 0, 0, 0, 0, undefined, 0)", "'Error: INDEX_SIZE_ERR: DOM Exception 1'");
 shouldThrow("context.putImageData(buffer, 0, 0, 0, 0, 0, undefined)", "'Error: INDEX_SIZE_ERR: DOM Exception 1'");
 
+// Ensure we don't mess up bounds clipping checks
+var rectcanvas = document.createElement("canvas");
+rectcanvas.width = 20;
+rectcanvas.height = 10;
+var rectbuffer = rectcanvas.getContext("2d");
+rectbuffer.putImageData(smallbuffer, 10, 0);
+
+var rectcanvas = document.createElement("canvas");
+rectcanvas.width = 10;
+rectcanvas.height = 20;
+var rectbuffer = rectcanvas.getContext("2d");
+rectbuffer.putImageData(smallbuffer, 0, 10);
+
 var successfullyParsed = true;
 var successfullyParsed = true;
index 3960aa7..4ad90bd 100644 (file)
@@ -1,3 +1,12 @@
+2008-03-03  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        Correct incorrect assertion
+
+        * platform/graphics/cg/ImageBufferCG.cpp:
+        (WebCore::ImageBuffer::putImageData):
+
 2008-03-02  Alp Toker  <alp@atoker.com>
 
         Another fix for non-database builds after changes in r30331.
 2008-03-02  Alp Toker  <alp@atoker.com>
 
         Another fix for non-database builds after changes in r30331.
index 2e48ceb..eff61b9 100644 (file)
@@ -182,7 +182,7 @@ void ImageBuffer::putImageData(ImageData* source, const IntRect& sourceRect, con
     ASSERT(originy <= sourceRect.bottom());
 
     int endy = destPoint.y() + sourceRect.bottom();
     ASSERT(originy <= sourceRect.bottom());
 
     int endy = destPoint.y() + sourceRect.bottom();
-    ASSERT(endx <= m_size.height());
+    ASSERT(endy <= m_size.height());
     int numRows = endy - desty;
 
     unsigned srcBytesPerRow = 4 * source->width();
     int numRows = endy - desty;
 
     unsigned srcBytesPerRow = 4 * source->width();