Index: src/pipe/SkGPipeWrite.cpp |
diff --git a/src/pipe/SkGPipeWrite.cpp b/src/pipe/SkGPipeWrite.cpp |
index 46e4260f311f238600c9979ccbada19a3b73f109..186b66cd98161b859fe1abd96338c3353be8ecba 100644 |
--- a/src/pipe/SkGPipeWrite.cpp |
+++ b/src/pipe/SkGPipeWrite.cpp |
@@ -254,6 +254,7 @@ public: |
const SkColor colors[], SkXfermode*, |
const uint16_t indices[], int indexCount, |
const SkPaint&) SK_OVERRIDE; |
+ virtual void drawPatch(const SkPatch& patch, const SkPaint& paint) SK_OVERRIDE; |
virtual void drawData(const void*, size_t) SK_OVERRIDE; |
virtual void beginCommentGroup(const char* description) SK_OVERRIDE; |
virtual void addComment(const char* kywd, const char* value) SK_OVERRIDE; |
@@ -997,6 +998,15 @@ void SkGPipeCanvas::drawVertices(VertexMode vmode, int vertexCount, |
} |
} |
+void SkGPipeCanvas::drawPatch(const SkPatch& patch, const SkPaint& paint) { |
+ NOTIFY_SETUP(this); |
+ this->writePaint(paint); |
+ if (this->needOpBytes(patch.writeToMemory(NULL))) { |
+ this->writeOp(kDrawPatch_DrawOp); |
+ fWriter.writePatch(patch); |
+ } |
+} |
+ |
void SkGPipeCanvas::drawData(const void* ptr, size_t size) { |
if (size && ptr) { |
NOTIFY_SETUP(this); |