Index: WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp |
=================================================================== |
--- WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp (revision 69026) |
+++ WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp (working copy) |
@@ -356,7 +356,8 @@ |
if ((prevMethod == RGBA32Buffer::DisposeNotSpecified) || (prevMethod == RGBA32Buffer::DisposeKeep)) { |
// Preserve the last frame as the starting state for this frame. |
- buffer->copyBitmapData(*prevBuffer); |
+ if (!buffer->copyBitmapData(*prevBuffer)) |
+ return setFailed(); |
} else { |
// We want to clear the previous frame to transparent, without |
// affecting pixels in the image outside of the frame. |
@@ -369,7 +370,8 @@ |
return setFailed(); |
} else { |
// Copy the whole previous buffer, then clear just its frame. |
- buffer->copyBitmapData(*prevBuffer); |
+ if (!buffer->copyBitmapData(*prevBuffer)) |
+ return setFailed(); |
for (int y = prevRect.y(); y < prevRect.bottom(); ++y) { |
for (int x = prevRect.x(); x < prevRect.right(); ++x) |
buffer->setRGBA(x, y, 0, 0, 0, 0); |