aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/CanvasStateHelpers.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2016-11-09 13:59:58 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2016-11-09 19:40:06 +0000
commit824075071885b6b741c141cbe2134d8345d34589 (patch)
tree828b9fd105e92a6ff21b0dc942da6c015ea8ac73 /tests/CanvasStateHelpers.cpp
parentc78eff97549e8e346394d3e228395ceb8a467b35 (diff)
Change SkCanvas to *not* inherit from SkRefCnt
Definitely tricky for classes like SkNWayCanvas, where the caller (today) need not pay attention to ownership of the canvases it gave the NWay (after this CL, the caller *must* managed ownership) BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4441 DOCS_PREVIEW= https://skia.org/?cl=4441 Change-Id: Ib1ac07a3cdf0686d78e7aaa4735d45cc90bea081 Reviewed-on: https://skia-review.googlesource.com/4441 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'tests/CanvasStateHelpers.cpp')
-rw-r--r--tests/CanvasStateHelpers.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/tests/CanvasStateHelpers.cpp b/tests/CanvasStateHelpers.cpp
index 801eaead49..98b5d231be 100644
--- a/tests/CanvasStateHelpers.cpp
+++ b/tests/CanvasStateHelpers.cpp
@@ -27,12 +27,11 @@ void complex_layers_draw(SkCanvas* canvas, float left, float top,
extern "C" bool complex_layers_draw_from_canvas_state(SkCanvasState* state,
float left, float top, float right, float bottom, int32_t spacer) {
- SkCanvas* canvas = SkCanvasStateUtils::CreateFromCanvasState(state);
+ std::unique_ptr<SkCanvas> canvas = SkCanvasStateUtils::MakeFromCanvasState(state);
if (!canvas) {
return false;
}
- complex_layers_draw(canvas, left, top, right, bottom, spacer);
- canvas->unref();
+ complex_layers_draw(canvas.get(), left, top, right, bottom, spacer);
return true;
}
@@ -52,7 +51,7 @@ void complex_clips_draw(SkCanvas* canvas, int32_t left, int32_t top,
extern "C" bool complex_clips_draw_from_canvas_state(SkCanvasState* state,
int32_t left, int32_t top, int32_t right, int32_t bottom, int32_t clipOp,
int32_t regionRects, int32_t* rectCoords) {
- SkCanvas* canvas = SkCanvasStateUtils::CreateFromCanvasState(state);
+ std::unique_ptr<SkCanvas> canvas = SkCanvasStateUtils::MakeFromCanvasState(state);
if (!canvas) {
return false;
}
@@ -64,8 +63,7 @@ extern "C" bool complex_clips_draw_from_canvas_state(SkCanvasState* state,
rectCoords += 4;
}
- complex_clips_draw(canvas, left, top, right, bottom, clipOp, localRegion);
- canvas->unref();
+ complex_clips_draw(canvas.get(), left, top, right, bottom, clipOp, localRegion);
return true;
}
#endif // SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG