| Index: base/memory/shared_memory_win.cc
|
| diff --git a/base/memory/shared_memory_win.cc b/base/memory/shared_memory_win.cc
|
| index 42e0b046b96e5818d3cfe05546e32a8857a91012..8807368570da4c95d565d8baa0719bade968df9e 100644
|
| --- a/base/memory/shared_memory_win.cc
|
| +++ b/base/memory/shared_memory_win.cc
|
| @@ -94,6 +94,18 @@ size_t SharedMemory::GetHandleLimit() {
|
| return static_cast<size_t>(1 << 23);
|
| }
|
|
|
| +// static
|
| +scoped_ptr<SharedMemory> SharedMemory::NewAnonymousReadOnly(
|
| + StringPiece contents) {
|
| + SharedMemory writable_handle;
|
| + writable_handle.CreateAndMapAnonymous(contents.size());
|
| + memcpy(writable_handle.memory(), contents.data(), contents.size());
|
| + writable_handle.Unmap();
|
| +
|
| + return make_scoped_ptr(new SharedMemory(
|
| + writable_handle.handle(), /*read_only=*/true, GetCurrentProcess()));
|
| +}
|
| +
|
| bool SharedMemory::CreateAndMapAnonymous(size_t size) {
|
| return CreateAnonymous(size) && Map(size);
|
| }
|
|
|