Index: base/memory/shared_memory.h |
diff --git a/base/memory/shared_memory.h b/base/memory/shared_memory.h |
index d76e01c6e57612024fe35dc7c430229d89cd5112..8b3fcf0b403c6f69afe4ddc21536a2dc20052c75 100644 |
--- a/base/memory/shared_memory.h |
+++ b/base/memory/shared_memory.h |
@@ -200,6 +200,14 @@ class BASE_EXPORT SharedMemory { |
SharedMemoryId id() const { return inode_; } |
#endif |
+#if defined(OS_WIN) |
+ // Allows the caller to specify if the underlying handle to the shared memory |
+ // section is inheritable. |
+ void set_inheritable(bool inheritable) { |
+ inheritable_ = inheritable; |
+ } |
+#endif |
+ |
// Closes the open shared memory segment. The memory will remain mapped if |
// it was previously mapped. |
// It is safe to call Close repeatedly. |
@@ -286,6 +294,8 @@ class BASE_EXPORT SharedMemory { |
#if defined(OS_WIN) |
std::wstring name_; |
HANDLE mapped_file_; |
+ // Indicates if the shared memory handle is inhertiable. Defaults to false. |
+ bool inheritable_; |
#elif defined(OS_POSIX) |
int mapped_file_; |
int readonly_mapped_file_; |