diff options
author | Hal Canary <halcanary@google.com> | 2017-03-02 15:27:23 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-03-02 21:03:35 +0000 |
commit | 68b9b57638d3c27587c21aefef7c36c4ed4e78e5 (patch) | |
tree | f42344be2422384757c5082c7e552b1705b32f0f /fuzz | |
parent | cd667b6e581b5f3060caf7a959ac6ef50fd33266 (diff) |
FuzzCanvas: fix drawVertices BUG=skia:6314
Change-Id: I5f55a0fc03d4fe780b35529df9eeb385639501f2
Reviewed-on: https://skia-review.googlesource.com/9173
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Diffstat (limited to 'fuzz')
-rw-r--r-- | fuzz/FuzzCanvas.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fuzz/FuzzCanvas.cpp b/fuzz/FuzzCanvas.cpp index eaa1ecb320..0dec81eb5e 100644 --- a/fuzz/FuzzCanvas.cpp +++ b/fuzz/FuzzCanvas.cpp @@ -1097,7 +1097,6 @@ void fuzz_canvas(Fuzz* fuzz, SkCanvas* canvas, int depth = 4) { SkPoint vertices[kMaxCount]; SkPoint texs[kMaxCount]; SkColor colors[kMaxCount]; - uint16_t indices[kMaxCount]; fuzz->nextRange(&vertexCount, 3, kMaxCount); fuzz->nextN(vertices, vertexCount); bool useTexs, useColors; @@ -1109,8 +1108,12 @@ void fuzz_canvas(Fuzz* fuzz, SkCanvas* canvas, int depth = 4) { fuzz->nextN(colors, vertexCount); } int indexCount = 0; + uint16_t indices[kMaxCount * 2]; if (make_bool(fuzz)) { - fuzz->nextRange(&indexCount, 3, kMaxCount); + fuzz->nextRange(&indexCount, vertexCount, vertexCount + kMaxCount); + for (int i = 0; i < indexCount; ++i) { + fuzz->nextRange(&indices[i], 0, vertexCount - 1); + } } canvas->drawVertices(vertexMode, vertexCount, vertices, useTexs ? texs : nullptr, |