Index: src/core/SkRecorder.cpp |
diff --git a/src/core/SkRecorder.cpp b/src/core/SkRecorder.cpp |
index 6b3eac9866728fdbf4e7bcc0a96b37809f275001..40e4a1c87a4dd5ac295d3b356aee7c7813d71ea7 100644 |
--- a/src/core/SkRecorder.cpp |
+++ b/src/core/SkRecorder.cpp |
@@ -206,8 +206,16 @@ void SkRecorder::drawVertices(VertexMode vmode, |
indexCount); |
} |
-void SkRecorder::drawPatch(const SkPatch& patch, const SkPaint& paint) { |
- APPEND(DrawPatch, delay_copy(paint), delay_copy(patch)); |
+void SkRecorder::drawPatch(const SkPoint cubics[12], const SkColor colors[4], |
+ const SkPoint texCoords[4], SkXfermode* xmode, const SkPaint& paint) { |
+ if (NULL == cubics) { |
+ return; |
+ } |
+ |
+ APPEND(DrawPatch, delay_copy(paint), cubics ? this->copy(cubics, SkPatch::kNumCtrlPts) : NULL, |
+ colors ? this->copy(colors, SkPatch::kNumCorners) : NULL, |
+ texCoords ? this->copy(texCoords, SkPatch::kNumCorners) : NULL, |
+ xmode); |
} |
void SkRecorder::willSave() { |