diff options
author | bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2012-03-07 19:13:28 +0000 |
---|---|---|
committer | bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2012-03-07 19:13:28 +0000 |
commit | b372942bbc842b5728cbc8e9dd024928a793846a (patch) | |
tree | fdbd249d5f171ac21b2a2f5544d2130ed3057491 /src/gpu/GrAAConvexPathRenderer.cpp | |
parent | bb2d36dfc9168da1a220777508720c0b10a2ae94 (diff) |
make pathrenderers release their geometry before returning
Review URL: http://codereview.appspot.com/5753073/
git-svn-id: http://skia.googlecode.com/svn/trunk@3335 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/gpu/GrAAConvexPathRenderer.cpp')
-rw-r--r-- | src/gpu/GrAAConvexPathRenderer.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/gpu/GrAAConvexPathRenderer.cpp b/src/gpu/GrAAConvexPathRenderer.cpp index 029d493522..d1715e9079 100644 --- a/src/gpu/GrAAConvexPathRenderer.cpp +++ b/src/gpu/GrAAConvexPathRenderer.cpp @@ -505,15 +505,12 @@ bool GrAAConvexPathRenderer::onDrawPath(const SkPath& origPath, return false; } - if (!target->reserveVertexSpace(layout, - vCount, - reinterpret_cast<void**>(&verts))) { - return false; - } - if (!target->reserveIndexSpace(iCount, reinterpret_cast<void**>(&idxs))) { - target->resetVertexSource(); + GrDrawTarget::AutoReleaseGeometry arg(target, layout, vCount, iCount); + if (!arg.succeeded()) { return false; } + verts = reinterpret_cast<QuadVertex*>(arg.vertices()); + idxs = reinterpret_cast<uint16_t*>(arg.indices()); create_vertices(segments, fanPt, verts, idxs); |