diff options
author | 2018-06-15 15:59:38 +0000 | |
---|---|---|
committer | 2018-06-15 15:59:45 +0000 | |
commit | 4f6ba2e522bcc3f84c02c9b7dd834b9b5476968b (patch) | |
tree | 790f98d53f60cdef293fa2788ac02ec4722c33c1 /src/gpu/GrTextureOpList.cpp | |
parent | 0513dd8675534afdd605cea32778a4b4671b2c3d (diff) |
Revert "Move op memory storage to GrContext"
This reverts commit c8cee446bf9c07da8848bbd032abf26e79966ac1.
Reason for revert: TSAN issues
Original change's description:
> Move op memory storage to GrContext
>
> TBR=bsalomon@google.com
> Change-Id: Ifa95bf0073b9d948f2c937d10088b7734b971f90
> Reviewed-on: https://skia-review.googlesource.com/131500
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
Change-Id: Ia0d2b7408314d9b67d57388315376bbea23d3780
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/135181
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'src/gpu/GrTextureOpList.cpp')
-rw-r--r-- | src/gpu/GrTextureOpList.cpp | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/src/gpu/GrTextureOpList.cpp b/src/gpu/GrTextureOpList.cpp index 6a601aa83c..a868b5d393 100644 --- a/src/gpu/GrTextureOpList.cpp +++ b/src/gpu/GrTextureOpList.cpp @@ -11,7 +11,6 @@ #include "GrContext.h" #include "GrContextPriv.h" #include "GrGpu.h" -#include "GrMemoryPool.h" #include "GrResourceAllocator.h" #include "GrTextureProxy.h" #include "SkStringUtils.h" @@ -20,28 +19,12 @@ //////////////////////////////////////////////////////////////////////////////// GrTextureOpList::GrTextureOpList(GrResourceProvider* resourceProvider, - sk_sp<GrOpMemoryPool> opMemoryPool, GrTextureProxy* proxy, GrAuditTrail* auditTrail) - : INHERITED(resourceProvider, std::move(opMemoryPool), proxy, auditTrail) { - SkASSERT(fOpMemoryPool); -} - -void GrTextureOpList::deleteOp(int index) { - SkASSERT(index >= 0 && index < fRecordedOps.count()); - fOpMemoryPool->release(std::move(fRecordedOps[index])); -} - -void GrTextureOpList::deleteOps() { - for (int i = 0; i < fRecordedOps.count(); ++i) { - fOpMemoryPool->release(std::move(fRecordedOps[i])); - } - fRecordedOps.reset(); - fOpMemoryPool = nullptr; + : INHERITED(resourceProvider, proxy, auditTrail) { } GrTextureOpList::~GrTextureOpList() { - this->deleteOps(); } //////////////////////////////////////////////////////////////////////////////// @@ -124,7 +107,7 @@ bool GrTextureOpList::onExecute(GrOpFlushState* flushState) { } void GrTextureOpList::endFlush() { - this->deleteOps(); + fRecordedOps.reset(); INHERITED::endFlush(); } @@ -169,7 +152,7 @@ void GrTextureOpList::purgeOpsWithUninstantiatedProxies() { } if (hasUninstantiatedProxy) { // When instantiation of the proxy fails we drop the Op - this->deleteOp(i); + fRecordedOps[i] = nullptr; } } } |