From 488a337ea9673488530b01451470a2b89ec0a54f Mon Sep 17 00:00:00 2001 From: "commit-bot@chromium.org" Date: Wed, 7 Aug 2013 17:03:09 +0000 Subject: gm/bitmapcopy: create the bitmap in a secondary canvas, since the one in which we draw might be backed by PDF and then accessBitmap does not work. R=borenet@google.com, jvanverth@google.com Author: edisonn@google.com Review URL: https://chromiumcodereview.appspot.com/22353006 git-svn-id: http://skia.googlecode.com/svn/trunk@10614 2bbb7eff-a529-9590-31e7-b0007b416f81 --- gm/bitmapcopy.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'gm/bitmapcopy.cpp') diff --git a/gm/bitmapcopy.cpp b/gm/bitmapcopy.cpp index 89ca525448..ba2c510db1 100644 --- a/gm/bitmapcopy.cpp +++ b/gm/bitmapcopy.cpp @@ -21,7 +21,8 @@ static const char* gConfigNames[] = { SkBitmap::Config gConfigs[] = { SkBitmap::kRGB_565_Config, - SkBitmap::kARGB_4444_Config, + SkBitmap::kARGB_4444_Config, // TODO(edisonn): Should we remove it from GM? + // it fails to copy in bitmap with this config. SkBitmap::kARGB_8888_Config, }; @@ -65,8 +66,11 @@ protected: SkScalar horizMargin(SkIntToScalar(10)); SkScalar vertMargin(SkIntToScalar(10)); - draw_checks(canvas, 40, 40); - SkBitmap src = canvas->getTopDevice()->accessBitmap(false); + SkDevice devTmp(SkBitmap::kARGB_8888_Config, 40, 40); + SkCanvas canvasTmp(&devTmp); + + draw_checks(&canvasTmp, 40, 40); + SkBitmap src = canvasTmp.getTopDevice()->accessBitmap(false); for (unsigned i = 0; i < NUM_CONFIGS; ++i) { if (!src.deepCopyTo(&fDst[i], gConfigs[i])) { -- cgit v1.2.3