Fixed canvas creation in SampleApp
https://codereview.appspot.com/6588061/
git-svn-id: http://skia.googlecode.com/svn/trunk@5764 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/views/SkWindow.cpp b/src/views/SkWindow.cpp
index b20267a..b02631d 100644
--- a/src/views/SkWindow.cpp
+++ b/src/views/SkWindow.cpp
@@ -176,14 +176,15 @@
bm.setPixels(buffer);
#endif
- SkCanvas rasterCanvas(bm);
- rasterCanvas.clipRegion(fDirtyRgn);
+ SkAutoTUnref<SkCanvas> canvas(this->createCanvas());
+
+ canvas->clipRegion(fDirtyRgn);
if (updateArea)
*updateArea = fDirtyRgn.getBounds();
- SkAutoCanvasRestore acr(&rasterCanvas, true);
- rasterCanvas.concat(fMatrix);
+ SkAutoCanvasRestore acr(canvas, true);
+ canvas->concat(fMatrix);
// empty this now, so we can correctly record any inval calls that
// might be made during the draw call.
@@ -191,25 +192,25 @@
#ifdef TEST_BOUNDER
test_bounder b(bm);
- rasterCanvas.setBounder(&b);
+ canvas->setBounder(&b);
#endif
#ifdef SK_SIMULATE_FAILED_MALLOC
gEnableControlledThrow = true;
#endif
#ifdef SK_BUILD_FOR_WIN32
//try {
- this->draw(&rasterCanvas);
+ this->draw(canvas);
//}
//catch (...) {
//}
#else
- this->draw(&rasterCanvas);
+ this->draw(canvas);
#endif
#ifdef SK_SIMULATE_FAILED_MALLOC
gEnableControlledThrow = false;
#endif
#ifdef TEST_BOUNDER
- rasterCanvas.setBounder(NULL);
+ canvas->setBounder(NULL);
#endif
#if defined(SK_BUILD_FOR_WINCE) && defined(USE_GX_SCREEN)