diff options
author | Mike Reed <reed@google.com> | 2017-03-17 13:09:38 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-03-17 13:09:52 +0000 |
commit | 1eb3fef136bc75bd8e8ed717ec7c5d4ab26def62 (patch) | |
tree | f58f12a44fbbb8bdd4727b923b587cc6d2c34c9d /include/utils | |
parent | 73e21af21390c2806eb1350253233903808edd6b (diff) |
Revert "More SkVertices implementation work"
This reverts commit 14583e11fd622c686993b741499060a6f3527055.
Reason for revert: leaking
Direct leak of 499104 byte(s) in 2112 object(s) allocated from:
#0 0x1e195f0 in operator new(unsigned long) (/b/swarm_slave/w/irazbR79/out/Debug/dm+0x1e195f0)
#1 0x3142b0a in SkVertices::Builder::init(SkCanvas::VertexMode, int, int, SkVertices::Sizes const&) (/b/swarm_slave/w/irazbR79/out/Debug/dm+0x3142b0a)
Original change's description:
> More SkVertices implementation work
>
> - change virtuals to take const SkVertices*, as we do for TextBobs and Images
> - override onDrawVerticesObject in recording canvases
> - deserialize raw-vertices into SkVertices object
>
> Possibly a follow-on would intercept the raw-form directly in canvas,
> and remove the virtual, and only support the object form.
>
> BUG=skia:6366
>
> Change-Id: I57a932667ccb3b3b004beb802ac3ae6898e3c6e0
> Reviewed-on: https://skia-review.googlesource.com/9633
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>
TBR=bsalomon@google.com,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:6366
Change-Id: I40bb7a20698ef6aa0a9ef71a3d6ac4c1473e081c
Reviewed-on: https://skia-review.googlesource.com/9825
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'include/utils')
-rw-r--r-- | include/utils/SkDumpCanvas.h | 6 | ||||
-rw-r--r-- | include/utils/SkLuaCanvas.h | 6 | ||||
-rw-r--r-- | include/utils/SkNoDrawCanvas.h | 5 |
3 files changed, 10 insertions, 7 deletions
diff --git a/include/utils/SkDumpCanvas.h b/include/utils/SkDumpCanvas.h index 19e5da567d..79a49bcd3b 100644 --- a/include/utils/SkDumpCanvas.h +++ b/include/utils/SkDumpCanvas.h @@ -117,9 +117,9 @@ protected: const SkColor colors[], SkBlendMode, const uint16_t indices[], int indexCount, const SkPaint&) override; - void onDrawVerticesObject(const SkVertices* vertices, SkBlendMode mode, - const SkPaint& paint) override { - this->devolveSkVerticesToRaw(vertices, mode, paint); + void onDrawVerticesObject(sk_sp<SkVertices> vertices, SkBlendMode mode, const SkPaint& paint, + uint32_t flags) override { + this->onDrawVerticesObjectFallback(std::move(vertices), mode, paint, flags); } void onClipRect(const SkRect&, SkClipOp, ClipEdgeStyle) override; diff --git a/include/utils/SkLuaCanvas.h b/include/utils/SkLuaCanvas.h index a11d72f26c..ce374137c0 100644 --- a/include/utils/SkLuaCanvas.h +++ b/include/utils/SkLuaCanvas.h @@ -63,9 +63,9 @@ protected: const SkColor colors[], SkBlendMode, const uint16_t indices[], int indexCount, const SkPaint&) override; - void onDrawVerticesObject(const SkVertices* vertices, SkBlendMode mode, - const SkPaint& paint) override { - this->devolveSkVerticesToRaw(vertices, mode, paint); + void onDrawVerticesObject(sk_sp<SkVertices> vertices, SkBlendMode mode, const SkPaint& paint, + uint32_t flags) override { + this->onDrawVerticesObjectFallback(std::move(vertices), mode, paint, flags); } void onClipRect(const SkRect&, SkClipOp, ClipEdgeStyle) override; diff --git a/include/utils/SkNoDrawCanvas.h b/include/utils/SkNoDrawCanvas.h index 75c15b201e..14b85549f4 100644 --- a/include/utils/SkNoDrawCanvas.h +++ b/include/utils/SkNoDrawCanvas.h @@ -68,7 +68,10 @@ protected: const SkPaint*) override {} void onDrawVertices(VertexMode, int, const SkPoint[], const SkPoint[], const SkColor[], SkBlendMode, const uint16_t[], int, const SkPaint&) override {} - void onDrawVerticesObject(const SkVertices*, SkBlendMode, const SkPaint&) override {} + void onDrawVerticesObject(sk_sp<SkVertices> vertices, SkBlendMode mode, const SkPaint& paint, + uint32_t flags) override { + this->onDrawVerticesObjectFallback(std::move(vertices), mode, paint, flags); + } void onDrawAtlas(const SkImage*, const SkRSXform[], const SkRect[], const SkColor[], int, SkBlendMode, const SkRect*, const SkPaint*) override {} |