Index: src/gpu/GrDrawTarget.cpp |
diff --git a/src/gpu/GrDrawTarget.cpp b/src/gpu/GrDrawTarget.cpp |
index 7ae2c99825109125117da824b5b99e9a52f1b7f3..850309797cf7d7e63b502aaaac2757dc4962e5a4 100644 |
--- a/src/gpu/GrDrawTarget.cpp |
+++ b/src/gpu/GrDrawTarget.cpp |
@@ -37,8 +37,16 @@ |
fVerticesPerInstance = di.fVerticesPerInstance; |
fIndicesPerInstance = di.fIndicesPerInstance; |
- fVertexBuffer.reset(di.vertexBuffer()); |
- fIndexBuffer.reset(di.indexBuffer()); |
+ if (di.fDevBounds) { |
+ SkASSERT(di.fDevBounds == &di.fDevBoundsStorage); |
+ fDevBoundsStorage = di.fDevBoundsStorage; |
+ fDevBounds = &fDevBoundsStorage; |
+ } else { |
+ fDevBounds = NULL; |
+ } |
+ |
+ this->setVertexBuffer(di.vertexBuffer()); |
+ this->setIndexBuffer(di.indexBuffer()); |
return *this; |
} |