aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/image/SkImage_Gpu.cpp
diff options
context:
space:
mode:
authorGravatar Greg Daniel <egdaniel@google.com>2018-04-09 09:15:56 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-04-09 13:54:04 +0000
commit66aebf3b476e679d1cbc0b8229b4d99e5aacc7d2 (patch)
tree9555a91ba0775a5194f5f81a8950270984df4909 /src/image/SkImage_Gpu.cpp
parent255735e53b2d2fd1db1dde19e14cfcf1a68602b1 (diff)
Make sure GrBackendTextures are valid before starting to do things with them
Bug: skia: Change-Id: If05706f0fd732bb1b2bfb788b540e795fa724814 Reviewed-on: https://skia-review.googlesource.com/119887 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
Diffstat (limited to 'src/image/SkImage_Gpu.cpp')
-rw-r--r--src/image/SkImage_Gpu.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/image/SkImage_Gpu.cpp b/src/image/SkImage_Gpu.cpp
index 0dd7e95843..be570c3097 100644
--- a/src/image/SkImage_Gpu.cpp
+++ b/src/image/SkImage_Gpu.cpp
@@ -328,7 +328,7 @@ static sk_sp<SkImage> new_wrapped_texture_common(GrContext* ctx,
GrWrapOwnership ownership,
SkImage::TextureReleaseProc releaseProc,
SkImage::ReleaseContext releaseCtx) {
- if (backendTex.width() <= 0 || backendTex.height() <= 0) {
+ if (!backendTex.isValid() || backendTex.width() <= 0 || backendTex.height() <= 0) {
return nullptr;
}
@@ -345,6 +345,9 @@ static sk_sp<SkImage> new_wrapped_texture_common(GrContext* ctx,
bool validate_backend_texture(GrContext* ctx, const GrBackendTexture& tex, GrPixelConfig* config,
SkColorType ct, SkAlphaType at, sk_sp<SkColorSpace> cs) {
+ if (!tex.isValid()) {
+ return false;
+ }
// TODO: Create a SkImageColorInfo struct for color, alpha, and color space so we don't need to
// create a fake image info here.
SkImageInfo info = SkImageInfo::Make(1, 1, ct, at, cs);