Index: src/gpu/GrGpu.cpp |
diff --git a/src/gpu/GrGpu.cpp b/src/gpu/GrGpu.cpp |
index 8222504b0e1e45ce750f2d7ee3363c10b3d80d03..15e4b28c3a5d210aa7f7a48ab0876367d75e3b51 100644 |
--- a/src/gpu/GrGpu.cpp |
+++ b/src/gpu/GrGpu.cpp |
@@ -29,6 +29,7 @@ GrVertices& GrVertices::operator =(const GrVertices& di) { |
fInstanceCount = di.fInstanceCount; |
fVerticesPerInstance = di.fVerticesPerInstance; |
fIndicesPerInstance = di.fIndicesPerInstance; |
+ fMaxInstancesPerDraw = di.fMaxInstancesPerDraw; |
fVertexBuffer.reset(di.vertexBuffer()); |
fIndexBuffer.reset(di.indexBuffer()); |
@@ -288,7 +289,11 @@ void GrGpu::removeGpuTraceMarker(const GrGpuTraceMarker* marker) { |
void GrGpu::draw(const DrawArgs& args, const GrVertices& vertices) { |
this->handleDirtyContext(); |
- this->onDraw(args, vertices); |
+ GrVertices::Iterator iter; |
+ const GrNonInstancedVertices* verts = iter.init(vertices); |
+ do { |
+ this->onDraw(args, *verts); |
+ } while ((verts = iter.next())); |
} |
void GrGpu::stencilPath(const GrPath* path, const StencilPathState& state) { |