diff options
author | dmaclach@chromium.org <dmaclach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-10-27 18:16:06 +0000 |
---|---|---|
committer | dmaclach@chromium.org <dmaclach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-10-27 18:16:06 +0000 |
commit | 54e3dfa2e76af401751b676e6fa150499734e9e6 (patch) | |
tree | 9b0487732aeaaa36491be79936aa044b47ab8b49 /gpu | |
parent | 71572873eb78084971b4d1bdd6560f876dc2fada (diff) | |
download | chromium_src-54e3dfa2e76af401751b676e6fa150499734e9e6.zip chromium_src-54e3dfa2e76af401751b676e6fa150499734e9e6.tar.gz chromium_src-54e3dfa2e76af401751b676e6fa150499734e9e6.tar.bz2 |
Fix up SharedMemory implementation so that it is more equivalent on Windows vs Posix and enforces exclusive creates.
Clean up some naming to make it clearer what size you are getting by changing max_size to created_size.
BUG=NONE
TEST=BUILD
Review URL: http://codereview.chromium.org/4034006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64097 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu')
-rw-r--r-- | gpu/command_buffer/service/command_buffer_service.cc | 13 | ||||
-rw-r--r-- | gpu/command_buffer/service/gpu_processor_unittest.cc | 3 |
2 files changed, 7 insertions, 9 deletions
diff --git a/gpu/command_buffer/service/command_buffer_service.cc b/gpu/command_buffer/service/command_buffer_service.cc index 330e774..fd443f2 100644 --- a/gpu/command_buffer/service/command_buffer_service.cc +++ b/gpu/command_buffer/service/command_buffer_service.cc @@ -43,9 +43,8 @@ bool CommandBufferService::Initialize(int32 size) { num_entries_ = size / sizeof(CommandBufferEntry); ring_buffer_.reset(new SharedMemory); - if (ring_buffer_->Create(std::string(), false, false, size)) { - if (ring_buffer_->Map(size)) - return true; + if (ring_buffer_->CreateAndMapAnonymous(size)) { + return true; } num_entries_ = 0; @@ -61,7 +60,7 @@ Buffer CommandBufferService::GetRingBuffer() { Buffer buffer; if (ring_buffer_.get()) { buffer.ptr = ring_buffer_->memory(); - buffer.size = ring_buffer_->max_size(); + buffer.size = ring_buffer_->created_size(); buffer.shared_memory = ring_buffer_.get(); } return buffer; @@ -100,7 +99,7 @@ void CommandBufferService::SetGetOffset(int32 get_offset) { int32 CommandBufferService::CreateTransferBuffer(size_t size) { linked_ptr<SharedMemory> buffer(new SharedMemory); - if (!buffer->Create(std::string(), false, false, size)) + if (!buffer->CreateAnonymous(size)) return -1; if (unused_registered_object_elements_.empty()) { @@ -153,13 +152,13 @@ Buffer CommandBufferService::GetTransferBuffer(int32 handle) { return Buffer(); if (!shared_memory->memory()) { - if (!shared_memory->Map(shared_memory->max_size())) + if (!shared_memory->Map(shared_memory->created_size())) return Buffer(); } Buffer buffer; buffer.ptr = shared_memory->memory(); - buffer.size = shared_memory->max_size(); + buffer.size = shared_memory->created_size(); buffer.shared_memory = shared_memory; return buffer; } diff --git a/gpu/command_buffer/service/gpu_processor_unittest.cc b/gpu/command_buffer/service/gpu_processor_unittest.cc index ffba24e..ce91210 100644 --- a/gpu/command_buffer/service/gpu_processor_unittest.cc +++ b/gpu/command_buffer/service/gpu_processor_unittest.cc @@ -29,8 +29,7 @@ class GPUProcessorTest : public testing::Test { protected: virtual void SetUp() { shared_memory_.reset(new ::base::SharedMemory); - shared_memory_->Create(std::string(), false, false, kRingBufferSize); - shared_memory_->Map(kRingBufferSize); + shared_memory_->CreateAndMapAnonymous(kRingBufferSize); buffer_ = static_cast<int32*>(shared_memory_->memory()); shared_memory_buffer_.ptr = buffer_; shared_memory_buffer_.size = kRingBufferSize; |