| Index: third_party/WebKit/Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| diff --git a/third_party/WebKit/Source/platform/graphics/DeferredImageDecoderTest.cpp b/third_party/WebKit/Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| index 905b2d3830a6bff94ca44cb1de4d2cbbbd979b13..1ec9790867af662420695eb08492b8b001f23137 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| +++ b/third_party/WebKit/Source/platform/graphics/DeferredImageDecoderTest.cpp
|
| @@ -346,7 +346,9 @@ TEST_F(DeferredImageDecoderTest, frameOpacity) {
|
| Vector<char> storage(size);
|
| SkPixmap pixmap(pix_info, storage.data(), row_bytes);
|
|
|
| - // Before decoding, the frame is not known to be opaque.
|
| + // Before decoding, the frame's alpha is unknown and assumed to be
|
| + // transparent. This works well with partial decoding, which will be
|
| + // transparent until the full first frame is decoded.
|
| sk_sp<SkImage> frame = decoder->CreateFrameAtIndex(0);
|
| ASSERT_TRUE(frame);
|
| EXPECT_FALSE(frame->isOpaque());
|
| @@ -354,10 +356,13 @@ TEST_F(DeferredImageDecoderTest, frameOpacity) {
|
| // Force a lazy decode by reading pixels.
|
| EXPECT_TRUE(frame->readPixels(pixmap, 0, 0));
|
|
|
| - // After decoding, the frame is known to be opaque.
|
| frame = decoder->CreateFrameAtIndex(0);
|
| ASSERT_TRUE(frame);
|
| - EXPECT_TRUE(frame->isOpaque());
|
| + // When test_gif is true, we use a GIF file which is opaque.
|
| + // When test_gif is false we use a PNG file instead.
|
| + // Our PNG handling does not check if an image may be opaque, so it is
|
| + // treated as transparent.
|
| + EXPECT_EQ(test_gif, frame->isOpaque());
|
|
|
| // Re-generating the opaque-marked frame should not fail.
|
| EXPECT_TRUE(frame->readPixels(pixmap, 0, 0));
|
|
|