diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/image/SkImage.cpp | 2 | ||||
-rw-r--r-- | src/image/SkImage_Gpu.cpp | 8 |
2 files changed, 3 insertions, 7 deletions
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( |