diff options
author | Greg Daniel <egdaniel@google.com> | 2018-04-09 09:15:56 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-04-09 13:54:04 +0000 |
commit | 66aebf3b476e679d1cbc0b8229b4d99e5aacc7d2 (patch) | |
tree | 9555a91ba0775a5194f5f81a8950270984df4909 /src/image/SkImage_Gpu.cpp | |
parent | 255735e53b2d2fd1db1dde19e14cfcf1a68602b1 (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.cpp | 5 |
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); |