aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/ImageBench.cpp
diff options
context:
space:
mode:
authorGravatar Brian Osman <brianosman@google.com>2017-06-08 11:07:18 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-06-08 15:37:40 +0000
commit0ce3d43df9cbada290008efcb183cedbcbe0aeed (patch)
tree80718e6738bd340c0b4e211e1c9a2c75f8c83b22 /bench/ImageBench.cpp
parenta6b2ba21530463384a80493834b5a8483670f0b3 (diff)
Fix native_image_to_raster_surface crash in ANGLE msaa configs
We only support MSAA with RGBA (not BGRA), on ANGLE, so we were failing to construct the GPU surface. Instead, use the original canvas' info to make the image surface (but always use N32 to make the raster surface). I think this will fix the Ubuntu Intel glesmsaa4 crashes, too, although I don't have a machine to test on right now. Bug: skia:6457 skia:6401 Change-Id: Icfc47845e97ef0806fb6d875f454d3920020ffbd Reviewed-on: https://skia-review.googlesource.com/19054 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
Diffstat (limited to 'bench/ImageBench.cpp')
-rw-r--r--bench/ImageBench.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/bench/ImageBench.cpp b/bench/ImageBench.cpp
index fbfce05a66..d8260e7ca2 100644
--- a/bench/ImageBench.cpp
+++ b/bench/ImageBench.cpp
@@ -30,13 +30,14 @@ protected:
//
void onPerCanvasPreDraw(SkCanvas* canvas) override {
// create an Image reflecting the canvas (gpu or cpu)
- SkImageInfo info = SkImageInfo::MakeN32Premul(100, 100);
+ SkImageInfo info = canvas->imageInfo().makeWH(100, 100);
auto surface(canvas->makeSurface(info));
canvas->drawColor(SK_ColorRED);
fImage = surface->makeImageSnapshot();
// create a cpu-backed Surface
- fRasterSurface = SkSurface::MakeRaster(info);
+ SkImageInfo n32Info = SkImageInfo::MakeN32Premul(100, 100);
+ fRasterSurface = SkSurface::MakeRaster(n32Info);
}
void onPerCanvasPostDraw(SkCanvas*) override {