| Index: third_party/WebKit/Source/platform/graphics/ImageFrameGeneratorTest.cpp
|
| diff --git a/third_party/WebKit/Source/platform/graphics/ImageFrameGeneratorTest.cpp b/third_party/WebKit/Source/platform/graphics/ImageFrameGeneratorTest.cpp
|
| index c72740578780138748b5e4a7f3ff8f3616f71faf..a5a3b988ba100e1edf6983c7bc1688c6f607d150 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/ImageFrameGeneratorTest.cpp
|
| +++ b/third_party/WebKit/Source/platform/graphics/ImageFrameGeneratorTest.cpp
|
| @@ -133,12 +133,14 @@ TEST_F(ImageFrameGeneratorTest, incompleteDecode) {
|
|
|
| char buffer[100 * 100 * 4];
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(1, m_decodeRequestCount);
|
|
|
| addNewData();
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(2, m_decodeRequestCount);
|
| EXPECT_EQ(0, m_decodersDestroyed);
|
| }
|
| @@ -148,7 +150,8 @@ TEST_F(ImageFrameGeneratorTest, incompleteDecodeBecomesComplete) {
|
|
|
| char buffer[100 * 100 * 4];
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(1, m_decodeRequestCount);
|
| EXPECT_EQ(0, m_decodersDestroyed);
|
|
|
| @@ -156,13 +159,15 @@ TEST_F(ImageFrameGeneratorTest, incompleteDecodeBecomesComplete) {
|
| addNewData();
|
|
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(2, m_decodeRequestCount);
|
| EXPECT_EQ(1, m_decodersDestroyed);
|
|
|
| // Decoder created again.
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(3, m_decodeRequestCount);
|
| }
|
|
|
| @@ -170,7 +175,7 @@ static void decodeThreadMain(ImageFrameGenerator* generator,
|
| SegmentReader* segmentReader) {
|
| char buffer[100 * 100 * 4];
|
| generator->decodeAndScale(segmentReader, false, 0, imageInfo(), buffer,
|
| - 100 * 4);
|
| + 100 * 4, ImageDecoder::AlphaPremultiplied);
|
| }
|
|
|
| TEST_F(ImageFrameGeneratorTest, incompleteDecodeBecomesCompleteMultiThreaded) {
|
| @@ -178,7 +183,8 @@ TEST_F(ImageFrameGeneratorTest, incompleteDecodeBecomesCompleteMultiThreaded) {
|
|
|
| char buffer[100 * 100 * 4];
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(1, m_decodeRequestCount);
|
| EXPECT_EQ(0, m_decodersDestroyed);
|
|
|
| @@ -196,7 +202,8 @@ TEST_F(ImageFrameGeneratorTest, incompleteDecodeBecomesCompleteMultiThreaded) {
|
|
|
| // Decoder created again.
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(3, m_decodeRequestCount);
|
|
|
| addNewData();
|
| @@ -210,13 +217,15 @@ TEST_F(ImageFrameGeneratorTest, frameHasAlpha) {
|
|
|
| char buffer[100 * 100 * 4];
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_TRUE(m_generator->hasAlpha(0));
|
| EXPECT_EQ(1, m_decodeRequestCount);
|
|
|
| ImageDecoder* tempDecoder = 0;
|
| EXPECT_TRUE(ImageDecodingStore::instance().lockDecoder(
|
| - m_generator.get(), fullSize(), &tempDecoder));
|
| + m_generator.get(), fullSize(), ImageDecoder::AlphaPremultiplied,
|
| + &tempDecoder));
|
| ASSERT_TRUE(tempDecoder);
|
| tempDecoder->frameBufferAtIndex(0)->setHasAlpha(false);
|
| ImageDecodingStore::instance().unlockDecoder(m_generator.get(), tempDecoder);
|
| @@ -224,7 +233,8 @@ TEST_F(ImageFrameGeneratorTest, frameHasAlpha) {
|
|
|
| setFrameStatus(ImageFrame::FrameComplete);
|
| m_generator->decodeAndScale(m_segmentReader.get(), false, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(3, m_decodeRequestCount);
|
| EXPECT_FALSE(m_generator->hasAlpha(0));
|
| }
|
| @@ -235,7 +245,8 @@ TEST_F(ImageFrameGeneratorTest, clearMultiFrameDecoder) {
|
|
|
| char buffer[100 * 100 * 4];
|
| m_generator->decodeAndScale(m_segmentReader.get(), true, 0, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(1, m_decodeRequestCount);
|
| EXPECT_EQ(0, m_decodersDestroyed);
|
| EXPECT_EQ(0U, m_requestedClearExceptFrame);
|
| @@ -243,7 +254,8 @@ TEST_F(ImageFrameGeneratorTest, clearMultiFrameDecoder) {
|
| setFrameStatus(ImageFrame::FrameComplete);
|
|
|
| m_generator->decodeAndScale(m_segmentReader.get(), true, 1, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(2, m_decodeRequestCount);
|
| EXPECT_EQ(0, m_decodersDestroyed);
|
| EXPECT_EQ(1U, m_requestedClearExceptFrame);
|
| @@ -254,7 +266,8 @@ TEST_F(ImageFrameGeneratorTest, clearMultiFrameDecoder) {
|
| // all the frame data, but not destroying the decoder. See comments in
|
| // ImageFrameGenerator::tryToResumeDecode().
|
| m_generator->decodeAndScale(m_segmentReader.get(), true, 2, imageInfo(),
|
| - buffer, 100 * 4);
|
| + buffer, 100 * 4,
|
| + ImageDecoder::AlphaPremultiplied);
|
| EXPECT_EQ(3, m_decodeRequestCount);
|
| EXPECT_EQ(0, m_decodersDestroyed);
|
| EXPECT_EQ(kNotFound, m_requestedClearExceptFrame);
|
|
|