Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2399)

Unified Diff: Source/platform/graphics/ImageBuffer.cpp

Issue 1257253004: [HTMLCanvasElement.toBlob] Default callback version without scheduler (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: A small change from thread safe bind to common bind based on Kinuko's review Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/platform/graphics/ImageBuffer.cpp
diff --git a/Source/platform/graphics/ImageBuffer.cpp b/Source/platform/graphics/ImageBuffer.cpp
index ece9dc7433d21ba3177ece5950bb03cc5136dd95..d1f305d1b878f65dc20522116998343b0293a356 100644
--- a/Source/platform/graphics/ImageBuffer.cpp
+++ b/Source/platform/graphics/ImageBuffer.cpp
@@ -341,7 +341,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
Noel Gordon 2015/08/28 08:53:47 This function was moved to ImageDataBuffer so toBl
xlai (Olivia) 2015/08/28 19:54:19 I believe that this ASSERT in toDataURL is redunda
{
Vector<unsigned char>* encodedImage = reinterpret_cast<Vector<unsigned char>*>(output);
@@ -349,16 +349,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");
}
@@ -371,7 +371,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);

Powered by Google App Engine
This is Rietveld 408576698