| Index: extensions/browser/api/web_contents_capture_client.cc
|
| diff --git a/extensions/browser/api/web_contents_capture_client.cc b/extensions/browser/api/web_contents_capture_client.cc
|
| index 98eb66791262d4f71bc595425398885cfe354ae3..b1efdde9231d030f2f052750f1389379df976a2a 100644
|
| --- a/extensions/browser/api/web_contents_capture_client.cc
|
| +++ b/extensions/browser/api/web_contents_capture_client.cc
|
| @@ -95,13 +95,14 @@ bool WebContentsCaptureClient::EncodeBitmap(const SkBitmap& bitmap,
|
| bool encoded = false;
|
| std::string mime_type;
|
| switch (image_format_) {
|
| - case api::extension_types::IMAGE_FORMAT_JPEG:
|
| - encoded = gfx::JPEGCodec::Encode(
|
| - reinterpret_cast<unsigned char*>(bitmap.getAddr32(0, 0)),
|
| - gfx::JPEGCodec::FORMAT_SkBitmap, bitmap.width(), bitmap.height(),
|
| - static_cast<int>(bitmap.rowBytes()), image_quality_, &data);
|
| + case api::extension_types::IMAGE_FORMAT_JPEG: {
|
| + SkPixmap pixmap;
|
| + bool success = bitmap.peekPixels(&pixmap);
|
| + DCHECK(success);
|
| + encoded = gfx::JPEGCodec::Encode(pixmap, image_quality_, &data);
|
| mime_type = kMimeTypeJpeg;
|
| break;
|
| + }
|
| case api::extension_types::IMAGE_FORMAT_PNG:
|
| encoded = gfx::PNGCodec::EncodeBGRASkBitmap(bitmap, should_discard_alpha,
|
| &data);
|
|
|