Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(267)

Unified Diff: src/gpu/GrGpu.cpp

Issue 481443002: Add GrResourceCache2. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: fix leaks Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/gpu/GrGpu.h ('k') | src/gpu/GrGpuResource.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/gpu/GrGpu.cpp
diff --git a/src/gpu/GrGpu.cpp b/src/gpu/GrGpu.cpp
index 74df26002d17c5692458cda6e9ba60a1a79d98ac..6ada03b62dab0ddc799219948e6d0a81a91b8a6a 100644
--- a/src/gpu/GrGpu.cpp
+++ b/src/gpu/GrGpu.cpp
@@ -50,18 +50,6 @@ GrGpu::GrGpu(GrContext* context)
}
GrGpu::~GrGpu() {
- this->releaseResources();
-}
-
-void GrGpu::abandonResources() {
-
- fClipMaskManager.releaseResources();
-
- while (NULL != fObjectList.head()) {
- fObjectList.head()->abandon();
- }
-
- SkASSERT(NULL == fQuadIndexBuffer || fQuadIndexBuffer->wasDestroyed());
SkSafeSetNull(fQuadIndexBuffer);
delete fVertexPool;
fVertexPool = NULL;
@@ -69,42 +57,7 @@ void GrGpu::abandonResources() {
fIndexPool = NULL;
}
-void GrGpu::releaseResources() {
-
- fClipMaskManager.releaseResources();
-
- while (NULL != fObjectList.head()) {
- fObjectList.head()->release();
- }
-
- SkASSERT(NULL == fQuadIndexBuffer || fQuadIndexBuffer->wasDestroyed());
- SkSafeSetNull(fQuadIndexBuffer);
- delete fVertexPool;
- fVertexPool = NULL;
- delete fIndexPool;
- fIndexPool = NULL;
-}
-
-void GrGpu::insertObject(GrGpuResource* object) {
- SkASSERT(NULL != object);
- SkASSERT(this == object->getGpu());
-
- fObjectList.addToHead(object);
-}
-
-void GrGpu::removeObject(GrGpuResource* object) {
- SkASSERT(NULL != object);
- SkASSERT(this == object->getGpu());
-
- fObjectList.remove(object);
-}
-
-
-void GrGpu::unimpl(const char msg[]) {
-#ifdef SK_DEBUG
- GrPrintf("--- GrGpu unimplemented(\"%s\")\n", msg);
-#endif
-}
+void GrGpu::contextAbandonded() {}
////////////////////////////////////////////////////////////////////////////////
@@ -318,7 +271,8 @@ static inline void fill_indices(uint16_t* indices, int quadCount) {
}
const GrIndexBuffer* GrGpu::getQuadIndexBuffer() const {
- if (NULL == fQuadIndexBuffer) {
+ if (NULL == fQuadIndexBuffer || fQuadIndexBuffer->wasDestroyed()) {
+ SkSafeUnref(fQuadIndexBuffer);
static const int SIZE = sizeof(uint16_t) * 6 * MAX_QUADS;
GrGpu* me = const_cast<GrGpu*>(this);
fQuadIndexBuffer = me->createIndexBuffer(SIZE, false);
« no previous file with comments | « src/gpu/GrGpu.h ('k') | src/gpu/GrGpuResource.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698