| Index: gpu/command_buffer/client/buffer_tracker.cc
|
| diff --git a/gpu/command_buffer/client/buffer_tracker.cc b/gpu/command_buffer/client/buffer_tracker.cc
|
| index 18cedb975d059664d421d5e65f11a982a39a474b..0d6a1372a2a23ba77daf13890a3405db1be7522f 100644
|
| --- a/gpu/command_buffer/client/buffer_tracker.cc
|
| +++ b/gpu/command_buffer/client/buffer_tracker.cc
|
| @@ -42,6 +42,13 @@ BufferTracker::Buffer* BufferTracker::GetBuffer(GLuint client_id) {
|
| return it != buffers_.end() ? it->second : NULL;
|
| }
|
|
|
| +void BufferTracker::UnmanageBuffer(GLuint client_id) {
|
| + BufferMap::iterator it = buffers_.find(client_id);
|
| + if (it == buffers_.end())
|
| + return;
|
| + buffers_.erase(it);
|
| +}
|
| +
|
| void BufferTracker::RemoveBuffer(GLuint client_id) {
|
| BufferMap::iterator it = buffers_.find(client_id);
|
| if (it != buffers_.end()) {
|
| @@ -60,8 +67,19 @@ void BufferTracker::FreePendingToken(Buffer* buffer, int32 token) {
|
| buffer->shm_id_ = 0;
|
| buffer->shm_offset_ = 0;
|
| buffer->address_ = NULL;
|
| + buffer->unused_token_ = 0;
|
| }
|
|
|
| +void BufferTracker::Free(Buffer* buffer) {
|
| + if (buffer->address_)
|
| + mapped_memory_->Free(buffer->address_);
|
| +
|
| + buffer->size_ = 0;
|
| + buffer->shm_id_ = 0;
|
| + buffer->shm_offset_ = 0;
|
| + buffer->address_ = NULL;
|
| + buffer->unused_token_ = 0;
|
| +}
|
|
|
| } // namespace gles2
|
| } // namespace gpu
|
|
|