[canvaskit] Fix null dereference when GrContext cannot be made
This happens when validation fails, for example.
Change-Id: Idbd552fbce51c5cf1543fc7a0a34a87230264d6e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253658
Reviewed-by: Kevin Lubick <kjlubick@google.com>
diff --git a/modules/canvaskit/CHANGELOG.md b/modules/canvaskit/CHANGELOG.md
index 2f8cf75..6cc8bd2 100644
--- a/modules/canvaskit/CHANGELOG.md
+++ b/modules/canvaskit/CHANGELOG.md
@@ -22,6 +22,9 @@
- Use newer version of Freetype2 (Tracking Skia's DEPS now).
- Use newer versions of libpng and zlib (Tracking Skia's DEPS now).
+### Fixed
+ - null dereference when sometimes falling back to CPU.
+
## [0.8.0] - 2019-10-21
### Added
diff --git a/modules/canvaskit/gpu.js b/modules/canvaskit/gpu.js
index 179b64b..ee10486 100644
--- a/modules/canvaskit/gpu.js
+++ b/modules/canvaskit/gpu.js
@@ -80,9 +80,12 @@
var grcontext = this.MakeGrContext(ctx);
- // Bump the default resource cache limit.
- var RESOURCE_CACHE_BYTES = 256 * 1024 * 1024;
- grcontext.setResourceCacheLimitBytes(RESOURCE_CACHE_BYTES);
+ if (grcontext) {
+ // Bump the default resource cache limit.
+ var RESOURCE_CACHE_BYTES = 256 * 1024 * 1024;
+ grcontext.setResourceCacheLimitBytes(RESOURCE_CACHE_BYTES);
+ }
+
// Maybe better to use clientWidth/height. See:
// https://webglfundamentals.org/webgl/lessons/webgl-anti-patterns.html