| Index: src/gpu/GrInOrderDrawBuffer.cpp
|
| diff --git a/src/gpu/GrInOrderDrawBuffer.cpp b/src/gpu/GrInOrderDrawBuffer.cpp
|
| index b671742309f862783f77b07a53b18795305f36cb..21a92499d8eb4dfae1d3c5e8c55b4ca66641a3d3 100644
|
| --- a/src/gpu/GrInOrderDrawBuffer.cpp
|
| +++ b/src/gpu/GrInOrderDrawBuffer.cpp
|
| @@ -585,26 +585,30 @@ void GrInOrderDrawBuffer::CopySurface::execute(GrClipTarget* gpu) {
|
| gpu->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;
|
| + } else if (GrDrawTarget::canCopySurface(dst, src, srcRect, dstPoint)) {
|
| + GrDrawTarget::copySurface(dst, src, srcRect, dstPoint);
|
| + return true;
|
| } else {
|
| return false;
|
| }
|
| }
|
|
|
| -bool GrInOrderDrawBuffer::onCanCopySurface(GrSurface* dst,
|
| - GrSurface* src,
|
| - const SkIRect& srcRect,
|
| - const SkIPoint& dstPoint) {
|
| - return fDstGpu->canCopySurface(dst, src, srcRect, dstPoint);
|
| +bool GrInOrderDrawBuffer::canCopySurface(GrSurface* dst,
|
| + GrSurface* src,
|
| + const SkIRect& srcRect,
|
| + const SkIPoint& dstPoint) {
|
| + return fDstGpu->canCopySurface(dst, src, srcRect, dstPoint) ||
|
| + GrDrawTarget::canCopySurface(dst, src, srcRect, dstPoint);
|
| }
|
|
|
| void GrInOrderDrawBuffer::initCopySurfaceDstDesc(const GrSurface* src, GrSurfaceDesc* desc) {
|
|
|