| Index: gpu/command_buffer/client/mapped_memory.cc
|
| diff --git a/gpu/command_buffer/client/mapped_memory.cc b/gpu/command_buffer/client/mapped_memory.cc
|
| index 689b576b9d8b49631746817e3e6a180b3ad8c750..461343e25a0f8a012c64be04ea0f4877fbf8feba 100644
|
| --- a/gpu/command_buffer/client/mapped_memory.cc
|
| +++ b/gpu/command_buffer/client/mapped_memory.cc
|
| @@ -88,6 +88,21 @@ void MappedMemoryManager::FreePendingToken(void* pointer, int32 token) {
|
| GPU_NOTREACHED();
|
| }
|
|
|
| +void MappedMemoryManager::FreeUnused() {
|
| + CommandBuffer* cmd_buf = helper_->command_buffer();
|
| + MemoryChunkVector::iterator iter = chunks_.begin();
|
| + while (iter != chunks_.end()) {
|
| + MemoryChunk* chunk = *iter;
|
| + chunk->FreeUnused();
|
| + if (!chunk->InUse()) {
|
| + cmd_buf->DestroyTransferBuffer(chunk->shm_id());
|
| + iter = chunks_.erase(iter);
|
| + } else {
|
| + ++iter;
|
| + }
|
| + }
|
| +}
|
| +
|
| } // namespace gpu
|
|
|
|
|
|
|