aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Ben Wagner <bungeman@google.com>2018-07-12 13:30:47 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-07-12 20:59:20 +0000
commit9ec70c6bd3dfe6338fbbae9c0447a5cbae770a75 (patch)
treefe9dcd75fcc80ce6c3d52a6d18cf8639b8aed485 /src
parentc434ade20eba4a62c450b7ce33a89966fac9df62 (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.cpp16
-rw-r--r--src/gpu/GrDrawingManager.h4
-rw-r--r--src/gpu/GrRenderTarget.cpp10
-rw-r--r--src/gpu/GrRenderTargetPriv.h4
-rw-r--r--src/utils/win/SkWGL.h4
-rw-r--r--src/utils/win/SkWGL_win.cpp7
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);
}