aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm
diff options
context:
space:
mode:
authorGravatar Robert Phillips <robertphillips@google.com>2018-06-25 08:53:09 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-06-25 13:52:55 +0000
commit6d36370c06fac5da22e6d7ea68b47ffee0d672aa (patch)
treecc387851327f72b48535725b7a6613b221650fdd /gm
parent93ae2337732bf206e6ef4faecc6b30c3881e8359 (diff)
Add bullet proofing for preAbandonContext
With the more agressive abandonment of the GrContext state in https://skia-review.googlesource.com/c/skia/+/137121 (Fix abandonment of programs) (i.e., nulling out of the interface) it is necessary to add more guards so that we don't try calling GL methods when the context has been abandoned. Change-Id: Ib2a3c17b9eaebd1eb84eb82a2781cf9d5a6a34a3 Reviewed-on: https://skia-review.googlesource.com/137362 Reviewed-by: Joe Gregorio <jcgregorio@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'gm')
-rw-r--r--gm/imagefromyuvtextures.cpp7
-rw-r--r--gm/rectangletexture.cpp3
2 files changed, 10 insertions, 0 deletions
diff --git a/gm/imagefromyuvtextures.cpp b/gm/imagefromyuvtextures.cpp
index 4139ca802b..87ab51ec1d 100644
--- a/gm/imagefromyuvtextures.cpp
+++ b/gm/imagefromyuvtextures.cpp
@@ -94,6 +94,10 @@ protected:
}
void createYUVTextures(GrContext* context, GrBackendTexture yuvTextures[3]) {
+ if (context->contextPriv().abandoned()) {
+ return;
+ }
+
GrGpu* gpu = context->contextPriv().getGpu();
if (!gpu) {
return;
@@ -111,6 +115,9 @@ protected:
}
void deleteYUVTextures(GrContext* context, GrBackendTexture yuvTextures[3]) {
+ if (context->contextPriv().abandoned()) {
+ return;
+ }
GrGpu* gpu = context->contextPriv().getGpu();
if (!gpu) {
diff --git a/gm/rectangletexture.cpp b/gm/rectangletexture.cpp
index a603be7bdc..d6bf1fb87e 100644
--- a/gm/rectangletexture.cpp
+++ b/gm/rectangletexture.cpp
@@ -60,6 +60,9 @@ protected:
if (!context) {
return nullptr;
}
+ if (context->contextPriv().abandoned()) {
+ return nullptr;
+ }
GrGpu* gpu = context->contextPriv().getGpu();
if (!gpu) {
return nullptr;