diff options
author | Ben Wagner <bungeman@google.com> | 2018-07-12 13:30:47 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-07-12 20:59:20 +0000 |
commit | 9ec70c6bd3dfe6338fbbae9c0447a5cbae770a75 (patch) | |
tree | fe9dcd75fcc80ce6c3d52a6d18cf8639b8aed485 /src | |
parent | c434ade20eba4a62c450b7ce33a89966fac9df62 (diff) |
Remove SkSafeSetNull.
Update all users to sk_sp.
Change-Id: I6453b9456b9a8f9e2b756381797f1382ef9e6561
Reviewed-on: https://skia-review.googlesource.com/141052
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/gpu/GrDrawingManager.cpp | 16 | ||||
-rw-r--r-- | src/gpu/GrDrawingManager.h | 4 | ||||
-rw-r--r-- | src/gpu/GrRenderTarget.cpp | 10 | ||||
-rw-r--r-- | src/gpu/GrRenderTargetPriv.h | 4 | ||||
-rw-r--r-- | src/utils/win/SkWGL.h | 4 | ||||
-rw-r--r-- | src/utils/win/SkWGL_win.cpp | 7 |
6 files changed, 24 insertions, 21 deletions
diff --git a/src/gpu/GrDrawingManager.cpp b/src/gpu/GrDrawingManager.cpp index 30d0016d67..0df9b34468 100644 --- a/src/gpu/GrDrawingManager.cpp +++ b/src/gpu/GrDrawingManager.cpp @@ -80,9 +80,8 @@ void GrDrawingManager::cleanup() { fOpLists.reset(); - delete fPathRendererChain; fPathRendererChain = nullptr; - SkSafeSetNull(fSoftwarePathRenderer); + fSoftwarePathRenderer = nullptr; fOnFlushCBObjects.reset(); } @@ -105,9 +104,8 @@ void GrDrawingManager::freeGpuResources() { } // a path renderer may be holding onto resources - delete fPathRendererChain; fPathRendererChain = nullptr; - SkSafeSetNull(fSoftwarePathRenderer); + fSoftwarePathRenderer = nullptr; } // MDB TODO: make use of the 'proxy' parameter. @@ -498,7 +496,7 @@ GrPathRenderer* GrDrawingManager::getPathRenderer(const GrPathRenderer::CanDrawP GrPathRenderer::StencilSupport* stencilSupport) { if (!fPathRendererChain) { - fPathRendererChain = new GrPathRendererChain(fContext, fOptionsForPathRendererChain); + fPathRendererChain.reset(new GrPathRendererChain(fContext, fOptionsForPathRendererChain)); } GrPathRenderer* pr = fPathRendererChain->getPathRenderer(args, drawType, stencilSupport); @@ -514,16 +512,16 @@ GrPathRenderer* GrDrawingManager::getPathRenderer(const GrPathRenderer::CanDrawP GrPathRenderer* GrDrawingManager::getSoftwarePathRenderer() { if (!fSoftwarePathRenderer) { - fSoftwarePathRenderer = + fSoftwarePathRenderer.reset( new GrSoftwarePathRenderer(fContext->contextPriv().proxyProvider(), - fOptionsForPathRendererChain.fAllowPathMaskCaching); + fOptionsForPathRendererChain.fAllowPathMaskCaching)); } - return fSoftwarePathRenderer; + return fSoftwarePathRenderer.get(); } GrCoverageCountingPathRenderer* GrDrawingManager::getCoverageCountingPathRenderer() { if (!fPathRendererChain) { - fPathRendererChain = new GrPathRendererChain(fContext, fOptionsForPathRendererChain); + fPathRendererChain.reset(new GrPathRendererChain(fContext, fOptionsForPathRendererChain)); } return fPathRendererChain->getCoverageCountingPathRenderer(); } diff --git a/src/gpu/GrDrawingManager.h b/src/gpu/GrDrawingManager.h index 91d1629348..bd2927eb36 100644 --- a/src/gpu/GrDrawingManager.h +++ b/src/gpu/GrDrawingManager.h @@ -125,8 +125,8 @@ private: std::unique_ptr<GrTextContext> fTextContext; - GrPathRendererChain* fPathRendererChain; - GrSoftwarePathRenderer* fSoftwarePathRenderer; + std::unique_ptr<GrPathRendererChain> fPathRendererChain; + sk_sp<GrSoftwarePathRenderer> fSoftwarePathRenderer; GrTokenTracker fTokenTracker; bool fFlushing; diff --git a/src/gpu/GrRenderTarget.cpp b/src/gpu/GrRenderTarget.cpp index c39723507a..00b4d29ffc 100644 --- a/src/gpu/GrRenderTarget.cpp +++ b/src/gpu/GrRenderTarget.cpp @@ -29,6 +29,8 @@ GrRenderTarget::GrRenderTarget(GrGpu* gpu, const GrSurfaceDesc& desc, fResolveRect = SkRectPriv::MakeILargestInverted(); } +GrRenderTarget::~GrRenderTarget() = default; + void GrRenderTarget::flagAsNeedingResolve(const SkIRect* rect) { if (kCanResolve_ResolveType == getResolveType()) { if (rect) { @@ -58,13 +60,13 @@ void GrRenderTarget::flagAsResolved() { } void GrRenderTarget::onRelease() { - SkSafeSetNull(fStencilAttachment); + fStencilAttachment = nullptr; INHERITED::onRelease(); } void GrRenderTarget::onAbandon() { - SkSafeSetNull(fStencilAttachment); + fStencilAttachment = nullptr; INHERITED::onAbandon(); } @@ -77,9 +79,9 @@ bool GrRenderTargetPriv::attachStencilAttachment(sk_sp<GrStencilAttachment> sten // we're not actually adding one. return true; } - fRenderTarget->fStencilAttachment = stencil.release(); + fRenderTarget->fStencilAttachment = std::move(stencil); if (!fRenderTarget->completeStencilAttachment()) { - SkSafeSetNull(fRenderTarget->fStencilAttachment); + fRenderTarget->fStencilAttachment = nullptr; return false; } return true; diff --git a/src/gpu/GrRenderTargetPriv.h b/src/gpu/GrRenderTargetPriv.h index 71ef809951..aa981fd535 100644 --- a/src/gpu/GrRenderTargetPriv.h +++ b/src/gpu/GrRenderTargetPriv.h @@ -21,7 +21,9 @@ public: /** * GrStencilAttachment is not part of the public API. */ - GrStencilAttachment* getStencilAttachment() const { return fRenderTarget->fStencilAttachment; } + GrStencilAttachment* getStencilAttachment() const { + return fRenderTarget->fStencilAttachment.get(); + } /** * Attaches the GrStencilAttachment onto the render target. If stencil is a nullptr then the diff --git a/src/utils/win/SkWGL.h b/src/utils/win/SkWGL.h index cd19f2eeba..6aafdcdbc0 100644 --- a/src/utils/win/SkWGL.h +++ b/src/utils/win/SkWGL.h @@ -145,8 +145,8 @@ HGLRC SkCreateWGLContext(HDC dc, int msaaSampleCount, bool deepColor, SkWGLConte */ class SkWGLPbufferContext : public SkRefCnt { public: - static SkWGLPbufferContext* Create(HDC parentDC, SkWGLContextRequest contextType, - HGLRC shareContext); + static sk_sp<SkWGLPbufferContext> Create(HDC parentDC, SkWGLContextRequest contextType, + HGLRC shareContext); virtual ~SkWGLPbufferContext(); diff --git a/src/utils/win/SkWGL_win.cpp b/src/utils/win/SkWGL_win.cpp index 441d7a4ebb..90b683e3c0 100644 --- a/src/utils/win/SkWGL_win.cpp +++ b/src/utils/win/SkWGL_win.cpp @@ -443,8 +443,9 @@ HGLRC SkCreateWGLContext(HDC dc, int msaaSampleCount, bool deepColor, return create_gl_context(dc, extensions, contextType, shareContext); } -SkWGLPbufferContext* SkWGLPbufferContext::Create(HDC parentDC, SkWGLContextRequest contextType, - HGLRC shareContext) { +sk_sp<SkWGLPbufferContext> SkWGLPbufferContext::Create(HDC parentDC, + SkWGLContextRequest contextType, + HGLRC shareContext) { SkWGLExtensions extensions; if (!extensions.hasExtension(parentDC, "WGL_ARB_pixel_format") || !extensions.hasExtension(parentDC, "WGL_ARB_pbuffer")) { @@ -485,7 +486,7 @@ SkWGLPbufferContext* SkWGLPbufferContext::Create(HDC parentDC, SkWGLContextReque if (dc) { HGLRC glrc = create_gl_context(dc, extensions, contextType, shareContext); if (glrc) { - return new SkWGLPbufferContext(pbuf, dc, glrc); + return sk_sp<SkWGLPbufferContext>(new SkWGLPbufferContext(pbuf, dc, glrc)); } extensions.releasePbufferDC(pbuf, dc); } |