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

Unified Diff: third_party/WebKit/Source/platform/graphics/ImageFrameGeneratorTest.cpp

Issue 2787053004: Respect colorSpace in DecodingImageGenerator::onGetPixels() (Closed)
Patch Set: Moving xform back to image generator Created 3 years, 8 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: 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);

Powered by Google App Engine
This is Rietveld 408576698