Chromium Code Reviews| Index: src/ports/SkImageDecoder_WIC.cpp |
| diff --git a/src/ports/SkImageDecoder_WIC.cpp b/src/ports/SkImageDecoder_WIC.cpp |
| index fa408836a4a4c09f71d3389ea1121b9d3f653cc8..7efa9d7dc5d9862c46d941d3d21e4469690a030e 100644 |
| --- a/src/ports/SkImageDecoder_WIC.cpp |
| +++ b/src/ports/SkImageDecoder_WIC.cpp |
| @@ -404,16 +404,13 @@ bool SkImageEncoder_WIC::onEncode(SkWStream* stream |
| hr = piBitmapFrameEncode->SetSize(width, height); |
| } |
| - //Set the pixel format of the frame. |
| + //Set the pixel format of the frame. If native encoded format cannot match BGRA, |
| + //it will choose the closest pixel format that it supports. |
| const WICPixelFormatGUID formatDesired = GUID_WICPixelFormat32bppBGRA; |
| WICPixelFormatGUID formatGUID = formatDesired; |
| if (SUCCEEDED(hr)) { |
| hr = piBitmapFrameEncode->SetPixelFormat(&formatGUID); |
| } |
| - if (SUCCEEDED(hr)) { |
|
msarett
2016/03/18 16:41:32
This code block causes the WIC encoder to fail for
|
| - //Be sure the image format is the one requested. |
| - hr = IsEqualGUID(formatGUID, formatDesired) ? S_OK : E_FAIL; |
| - } |
| //Write the pixels into the frame. |
| if (SUCCEEDED(hr)) { |
| @@ -438,7 +435,7 @@ bool SkImageEncoder_WIC::onEncode(SkWStream* stream |
| } |
| /////////////////////////////////////////////////////////////////////////////// |
| - |
| +/* |
|
scroggo
2016/03/18 17:23:12
This will disable the encoders on Windows. Is that
|
| static SkImageEncoder* sk_imageencoder_wic_factory(SkImageEncoder::Type t) { |
| switch (t) { |
| case SkImageEncoder::kBMP_Type: |
| @@ -452,7 +449,7 @@ static SkImageEncoder* sk_imageencoder_wic_factory(SkImageEncoder::Type t) { |
| return new SkImageEncoder_WIC(t); |
| } |
| -static SkImageEncoder_EncodeReg gEReg(sk_imageencoder_wic_factory); |
| +static SkImageEncoder_EncodeReg gEReg(sk_imageencoder_wic_factory);*/ |
| static SkImageDecoder::Format get_format_wic(SkStreamRewindable* stream) { |
| SkImageDecoder::Format format; |