summaryrefslogtreecommitdiffstats
path: root/gpu
diff options
context:
space:
mode:
authordmaclach@chromium.org <dmaclach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-27 18:16:06 +0000
committerdmaclach@chromium.org <dmaclach@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-27 18:16:06 +0000
commit54e3dfa2e76af401751b676e6fa150499734e9e6 (patch)
tree9b0487732aeaaa36491be79936aa044b47ab8b49 /gpu
parent71572873eb78084971b4d1bdd6560f876dc2fada (diff)
downloadchromium_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.cc13
-rw-r--r--gpu/command_buffer/service/gpu_processor_unittest.cc3
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;