aboutsummaryrefslogtreecommitdiff
path: root/www/firefox/files/patch-bug1252246
blob: 429391f0dc157914ef7ddd4b333e17bf5d290c50 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# Prefer PTHREAD_PROCESS_SHARED on FreeBSD 11.0 or later

diff --git a/ipc/glue/CrossProcessMutex.h b/ipc/glue/CrossProcessMutex.h
--- ipc/glue/CrossProcessMutex.h
+++ ipc/glue/CrossProcessMutex.h
@@ -9,7 +9,7 @@
 #include "base/process.h"
 #include "mozilla/Mutex.h"
 
-#if defined(OS_LINUX) || defined(XP_DARWIN)
+#if !defined(OS_WIN) && !defined(OS_NETBSD) && !defined(OS_OPENBSD)
 #include <pthread.h>
 #include "SharedMemoryBasic.h"
 #include "mozilla/Atomics.h"
@@ -34,7 +34,7 @@ struct ParamTraits;
 namespace mozilla {
 #if defined(OS_WIN)
 typedef HANDLE CrossProcessMutexHandle;
-#elif defined(OS_LINUX) || defined(OS_MACOSX)
+#elif !defined(OS_NETBSD) && !defined(OS_OPENBSD)
 typedef mozilla::ipc::SharedMemoryBasic::Handle CrossProcessMutexHandle;
 #else
 // Stub for other platforms. We can't use uintptr_t here since different
@@ -100,7 +100,7 @@ private:
 
 #if defined(OS_WIN)
   HANDLE mMutex;
-#elif defined(OS_LINUX) || defined(OS_MACOSX)
+#elif !defined(OS_NETBSD) && !defined(OS_OPENBSD)
   RefPtr<mozilla::ipc::SharedMemoryBasic> mSharedBuffer;
   pthread_mutex_t* mMutex;
   mozilla::Atomic<int32_t>* mCount;
diff --git a/ipc/glue/moz.build b/ipc/glue/moz.build
--- ipc/glue/moz.build
+++ ipc/glue/moz.build
@@ -61,7 +61,7 @@ if CONFIG['OS_ARCH'] == 'WINNT':
     SOURCES += [
         'CrossProcessMutex_windows.cpp',
     ]
-elif CONFIG['OS_ARCH'] in ('Linux', 'Darwin'):
+elif not CONFIG['OS_ARCH'] in ('NetBSD', 'OpenBSD'):
     UNIFIED_SOURCES += [
         'CrossProcessMutex_posix.cpp',
     ]