| Index: Source/platform/graphics/ImageBuffer.cpp
|
| diff --git a/Source/platform/graphics/ImageBuffer.cpp b/Source/platform/graphics/ImageBuffer.cpp
|
| index 8897e0a1b2d5eb8aca89df37843640f7fb6bb8bf..b19c14e01c7a4e99b418c36c9f6f272d394d314c 100644
|
| --- a/Source/platform/graphics/ImageBuffer.cpp
|
| +++ b/Source/platform/graphics/ImageBuffer.cpp
|
| @@ -327,7 +327,7 @@ void ImageBuffer::putByteArray(Multiply multiplied, const unsigned char* source,
|
| m_surface->writePixels(info, srcAddr, srcBytesPerRow, destX, destY);
|
| }
|
|
|
| -static bool encodeImage(const ImageDataBuffer& source, const String& mimeType, const double* quality, Vector<char>* output)
|
| +bool ImageDataBuffer::encodeImage(const String& mimeType, const double* quality, Vector<char>* output) const
|
| {
|
| Vector<unsigned char>* encodedImage = reinterpret_cast<Vector<unsigned char>*>(output);
|
|
|
| @@ -335,16 +335,16 @@ static bool encodeImage(const ImageDataBuffer& source, const String& mimeType, c
|
| int compressionQuality = JPEGImageEncoder::DefaultCompressionQuality;
|
| if (quality && *quality >= 0.0 && *quality <= 1.0)
|
| compressionQuality = static_cast<int>(*quality * 100 + 0.5);
|
| - if (!JPEGImageEncoder::encode(source, compressionQuality, encodedImage))
|
| + if (!JPEGImageEncoder::encode(*this, compressionQuality, encodedImage))
|
| return false;
|
| } else if (mimeType == "image/webp") {
|
| int compressionQuality = WEBPImageEncoder::DefaultCompressionQuality;
|
| if (quality && *quality >= 0.0 && *quality <= 1.0)
|
| compressionQuality = static_cast<int>(*quality * 100 + 0.5);
|
| - if (!WEBPImageEncoder::encode(source, compressionQuality, encodedImage))
|
| + if (!WEBPImageEncoder::encode(*this, compressionQuality, encodedImage))
|
| return false;
|
| } else {
|
| - if (!PNGImageEncoder::encode(source, encodedImage))
|
| + if (!PNGImageEncoder::encode(*this, encodedImage))
|
| return false;
|
| ASSERT(mimeType == "image/png");
|
| }
|
| @@ -357,7 +357,7 @@ String ImageDataBuffer::toDataURL(const String& mimeType, const double* quality)
|
| ASSERT(MIMETypeRegistry::isSupportedImageMIMETypeForEncoding(mimeType));
|
|
|
| Vector<char> encodedImage;
|
| - if (!encodeImage(*this, mimeType, quality, &encodedImage))
|
| + if (!encodeImage(mimeType, quality, &encodedImage))
|
| return "data:,";
|
|
|
| return "data:" + mimeType + ";base64," + base64Encode(encodedImage);
|
|
|