aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm/drawminibitmaprect.cpp
diff options
context:
space:
mode:
authorGravatar Brian Osman <brianosman@google.com>2018-01-04 15:28:39 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-01-04 21:25:54 +0000
commit876c841f9b4c57c404c572de1c862e39cc6a05a4 (patch)
treedffc842af8a5dbbc207a4c4fb335be626b53ae68 /gm/drawminibitmaprect.cpp
parent7edde238f741b7954a18797e88dcd04b59d79d2f (diff)
Always create a raster (cached) image
This avoids bugs in Viewer when starting in GL or Vulkan, then trying to reuse the image that points to a (possibly deleted) context when switching backends. Bug: skia: Change-Id: I4628aba5298bb733b8f4bb562cdbc872779d2829 Reviewed-on: https://skia-review.googlesource.com/90882 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'gm/drawminibitmaprect.cpp')
-rw-r--r--gm/drawminibitmaprect.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/gm/drawminibitmaprect.cpp b/gm/drawminibitmaprect.cpp
index b463d0614f..be842dc912 100644
--- a/gm/drawminibitmaprect.cpp
+++ b/gm/drawminibitmaprect.cpp
@@ -13,11 +13,10 @@
#include "SkRandom.h"
#include "SkShader.h"
#include "SkSurface.h"
-#include "sk_tool_utils.h"
-static sk_sp<SkImage> makebm(SkCanvas* caller, int w, int h) {
+static sk_sp<SkImage> makebm(int w, int h) {
SkImageInfo info = SkImageInfo::MakeN32Premul(w, h);
- auto surface(sk_tool_utils::makeSurface(caller, info));
+ auto surface(SkSurface::MakeRaster(info));
SkCanvas* canvas = surface->getCanvas();
const SkScalar wScalar = SkIntToScalar(w);
@@ -79,7 +78,7 @@ protected:
void onDraw(SkCanvas* canvas) override {
if (nullptr == fImage) {
- fImage = makebm(canvas, gSurfaceSize, gSurfaceSize);
+ fImage = makebm(gSurfaceSize, gSurfaceSize);
}
const SkRect dstRect = { 0, 0, SkIntToScalar(64), SkIntToScalar(64)};