aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@google.com>2018-01-12 12:52:37 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-01-12 12:52:48 +0000
commitef29e42ef3d81a0e704cf0efcfc9937b531f0327 (patch)
treee297ce256c72182f739c565ce2c4f8cdafe252f0
parentec940ae3a6f5e1a035ff62166c5dc0dbdad9e008 (diff)
Revert "fix legacy makeRasterImage()"
This reverts commit 7c4ca043361f6adb3d17a9d3db2397d86bac5a2d. Reason for revert: layout, cereal tests? Original change's description: > fix legacy makeRasterImage() > > Passing the color space down into SkImage_Lazy ends up triggering a > SkTransferFunctionBehavior::kRespect decode (tf(r*a)), where we want > ignore (tf(r)*a) to have any hope of working with the legacy backend. > > This fix in turn needs another little extension of another old hack in > SkImage_Gpu for makeNonTextureImage() to keep working there. > > Bug: skia:7479 > > Change-Id: If48ca68e95d9eee597f6b10434498049981314ba > Reviewed-on: https://skia-review.googlesource.com/93380 > Commit-Queue: Mike Klein <mtklein@chromium.org> > Reviewed-by: Brian Osman <brianosman@google.com> TBR=mtklein@chromium.org,brianosman@google.com Change-Id: I65092e01d767ef1fd35563f0b79ceded3c12b267 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia:7479 Reviewed-on: https://skia-review.googlesource.com/93820 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
-rw-r--r--gm/makeRasterImage.cpp15
-rw-r--r--gn/gm.gni1
-rw-r--r--src/image/SkImage.cpp2
-rw-r--r--src/image/SkImage_Gpu.cpp8
4 files changed, 3 insertions, 23 deletions
diff --git a/gm/makeRasterImage.cpp b/gm/makeRasterImage.cpp
deleted file mode 100644
index 06c1af1d8c..0000000000
--- a/gm/makeRasterImage.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-/*
- * Copyright 2018 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "Resources.h"
-#include "SkSurface.h"
-#include "gm.h"
-
-DEF_SIMPLE_GM(makeRasterImage, canvas, 128,128) {
- auto img = GetResourceAsImage("images/color_wheel.png");
- canvas->drawImage(img->makeRasterImage(), 0,0);
-}
diff --git a/gn/gm.gni b/gn/gm.gni
index 418957f34d..25c80bf886 100644
--- a/gn/gm.gni
+++ b/gn/gm.gni
@@ -204,7 +204,6 @@ gm_sources = [
"$_gm/localmatriximageshader.cpp",
"$_gm/lumafilter.cpp",
"$_gm/makecolorspace.cpp",
- "$_gm/makeRasterImage.cpp",
"$_gm/manypaths.cpp",
"$_gm/matrixconvolution.cpp",
"$_gm/matriximagefilter.cpp",
diff --git a/src/image/SkImage.cpp b/src/image/SkImage.cpp
index b5d68bf865..e618f7f454 100644
--- a/src/image/SkImage.cpp
+++ b/src/image/SkImage.cpp
@@ -334,7 +334,7 @@ sk_sp<SkImage> SkImage::makeRasterImage() const {
}
sk_sp<SkData> data = SkData::MakeUninitialized(size);
- pm = { info.makeColorSpace(nullptr), data->writable_data(), info.minRowBytes() };
+ pm = { info, data->writable_data(), info.minRowBytes() };
if (!this->readPixels(pm, 0, 0)) {
return nullptr;
}
diff --git a/src/image/SkImage_Gpu.cpp b/src/image/SkImage_Gpu.cpp
index e70ba05be5..a47587f1bc 100644
--- a/src/image/SkImage_Gpu.cpp
+++ b/src/image/SkImage_Gpu.cpp
@@ -211,13 +211,9 @@ bool SkImage_Gpu::onReadPixels(const SkImageInfo& dstInfo, void* dstPixels, size
// with arbitrary color spaces. Unfortunately, this is one spot where we go from image to
// surface (rather than the opposite), and our lenient image rules break our (currently) more
// strict surface rules.
- // We treat null-dst color space as always equal to fColorSpace for this kind of read-back.
sk_sp<SkColorSpace> surfaceColorSpace = fColorSpace;
- if (!flags) {
- if (!dstInfo.colorSpace() ||
- SkColorSpace::Equals(fColorSpace.get(), dstInfo.colorSpace())) {
- surfaceColorSpace = nullptr;
- }
+ if (!flags && SkColorSpace::Equals(fColorSpace.get(), dstInfo.colorSpace())) {
+ surfaceColorSpace = nullptr;
}
sk_sp<GrSurfaceContext> sContext = fContext->contextPriv().makeWrappedSurfaceContext(