summaryrefslogtreecommitdiffstats
path: root/base/memory/shared_memory_posix.cc
diff options
context:
space:
mode:
Diffstat (limited to 'base/memory/shared_memory_posix.cc')
-rw-r--r--base/memory/shared_memory_posix.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/base/memory/shared_memory_posix.cc b/base/memory/shared_memory_posix.cc
index 2e66b34..6a7c1d5 100644
--- a/base/memory/shared_memory_posix.cc
+++ b/base/memory/shared_memory_posix.cc
@@ -177,12 +177,16 @@ bool SharedMemory::CreateAndMapAnonymous(size_t size) {
#if !defined(OS_ANDROID)
// static
-int SharedMemory::GetSizeFromSharedMemoryHandle(
- const SharedMemoryHandle& handle) {
+bool SharedMemory::GetSizeFromSharedMemoryHandle(
+ const SharedMemoryHandle& handle,
+ size_t* size) {
struct stat st;
if (fstat(handle.fd, &st) != 0)
- return -1;
- return st.st_size;
+ return false;
+ if (st.st_size < 0)
+ return false;
+ *size = st.st_size;
+ return true;
}
// Chromium mostly only uses the unique/private shmem as specified by