| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #include "GrContext.h" | 10 #include "GrContext.h" |
| (...skipping 530 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 541 // will never be reused and would be just wasting time in the cache | 541 // will never be reused and would be just wasting time in the cache |
| 542 fResourceCache->makeNonExclusive(texture->getCacheEntry()); | 542 fResourceCache->makeNonExclusive(texture->getCacheEntry()); |
| 543 fResourceCache->deleteResource(texture->getCacheEntry()); | 543 fResourceCache->deleteResource(texture->getCacheEntry()); |
| 544 } | 544 } |
| 545 } | 545 } |
| 546 | 546 |
| 547 void GrContext::unlockScratchTexture(GrTexture* texture) { | 547 void GrContext::unlockScratchTexture(GrTexture* texture) { |
| 548 if (texture->wasDestroyed()) { | 548 if (texture->wasDestroyed()) { |
| 549 if (texture->getCacheEntry()->key().isScratch()) { | 549 if (texture->getCacheEntry()->key().isScratch()) { |
| 550 // This texture was detached from the cache but the cache still had
a ref to it but | 550 // This texture was detached from the cache but the cache still had
a ref to it but |
| 551 // not a pointer to it. | 551 // not a pointer to it. This will unref the texture and delete its r
esource cache |
| 552 texture->unref(); | 552 // entry. |
| 553 delete texture->getCacheEntry(); |
| 553 } | 554 } |
| 554 return; | 555 return; |
| 555 } | 556 } |
| 556 | 557 |
| 557 ASSERT_OWNED_RESOURCE(texture); | 558 ASSERT_OWNED_RESOURCE(texture); |
| 558 SkASSERT(NULL != texture->getCacheEntry()); | 559 SkASSERT(NULL != texture->getCacheEntry()); |
| 559 | 560 |
| 560 // If this is a scratch texture we detached it from the cache | 561 // If this is a scratch texture we detached it from the cache |
| 561 // while it was locked (to avoid two callers simultaneously getting | 562 // while it was locked (to avoid two callers simultaneously getting |
| 562 // the same texture). | 563 // the same texture). |
| (...skipping 1382 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1945 fDrawBuffer->removeGpuTraceMarker(marker); | 1946 fDrawBuffer->removeGpuTraceMarker(marker); |
| 1946 } | 1947 } |
| 1947 } | 1948 } |
| 1948 | 1949 |
| 1949 /////////////////////////////////////////////////////////////////////////////// | 1950 /////////////////////////////////////////////////////////////////////////////// |
| 1950 #if GR_CACHE_STATS | 1951 #if GR_CACHE_STATS |
| 1951 void GrContext::printCacheStats() const { | 1952 void GrContext::printCacheStats() const { |
| 1952 fResourceCache->printStats(); | 1953 fResourceCache->printStats(); |
| 1953 } | 1954 } |
| 1954 #endif | 1955 #endif |
| OLD | NEW |