Index: src/gpu/GrInOrderDrawBuffer.cpp |
diff --git a/src/gpu/GrInOrderDrawBuffer.cpp b/src/gpu/GrInOrderDrawBuffer.cpp |
index 45dd16d9a62974996b49df4e0efba3b07d9802cd..624c77476367c113d88900bf63720d41aaf4395a 100644 |
--- a/src/gpu/GrInOrderDrawBuffer.cpp |
+++ b/src/gpu/GrInOrderDrawBuffer.cpp |
@@ -557,29 +557,34 @@ |
buf->fDstGpu->copySurface(this->dst(), this->src(), fSrcRect, fDstPoint); |
} |
-bool GrInOrderDrawBuffer::onCopySurface(GrSurface* dst, |
- GrSurface* src, |
- const SkIRect& srcRect, |
- const SkIPoint& dstPoint) { |
+bool GrInOrderDrawBuffer::copySurface(GrSurface* dst, |
+ GrSurface* src, |
+ const SkIRect& srcRect, |
+ const SkIPoint& dstPoint) { |
if (fDstGpu->canCopySurface(dst, src, srcRect, dstPoint)) { |
CopySurface* cs = GrNEW_APPEND_TO_RECORDER(fCmdBuffer, CopySurface, (dst, src)); |
cs->fSrcRect = srcRect; |
cs->fDstPoint = dstPoint; |
this->recordTraceMarkersIfNecessary(); |
return true; |
- } |
- return false; |
-} |
- |
-bool GrInOrderDrawBuffer::onCanCopySurface(const GrSurface* dst, |
+ } else if (GrDrawTarget::canCopySurface(dst, src, srcRect, dstPoint)) { |
+ GrDrawTarget::copySurface(dst, src, srcRect, dstPoint); |
+ return true; |
+ } else { |
+ return false; |
+ } |
+} |
+ |
+bool GrInOrderDrawBuffer::canCopySurface(const GrSurface* dst, |
const GrSurface* src, |
const SkIRect& srcRect, |
const SkIPoint& dstPoint) { |
- return fDstGpu->canCopySurface(dst, src, srcRect, dstPoint); |
-} |
- |
-bool GrInOrderDrawBuffer::onInitCopySurfaceDstDesc(const GrSurface* src, GrSurfaceDesc* desc) { |
- return fDstGpu->initCopySurfaceDstDesc(src, desc); |
+ return fDstGpu->canCopySurface(dst, src, srcRect, dstPoint) || |
+ GrDrawTarget::canCopySurface(dst, src, srcRect, dstPoint); |
+} |
+ |
+void GrInOrderDrawBuffer::initCopySurfaceDstDesc(const GrSurface* src, GrSurfaceDesc* desc) { |
+ fDstGpu->initCopySurfaceDstDesc(src, desc); |
} |
void GrInOrderDrawBuffer::willReserveVertexAndIndexSpace(int vertexCount, |