summaryrefslogtreecommitdiff
path: root/pr/src/malloc/prmem.c
diff options
context:
space:
mode:
Diffstat (limited to 'pr/src/malloc/prmem.c')
-rw-r--r--pr/src/malloc/prmem.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/pr/src/malloc/prmem.c b/pr/src/malloc/prmem.c
index c9319216..c3fdcebc 100644
--- a/pr/src/malloc/prmem.c
+++ b/pr/src/malloc/prmem.c
@@ -116,6 +116,26 @@ static pthread_mutex_t _PR_MD_malloc_crustylock;
#else /* _PR_PTHREADS */
static _MDLock _PR_MD_malloc_crustylock;
+#ifdef IRIX
+#define _PR_Lock_Malloc() { \
+ PRIntn _is; \
+ if(PR_TRUE == _PR_malloc_initialised) { \
+ if (_PR_MD_GET_ATTACHED_THREAD() && \
+ !_PR_IS_NATIVE_THREAD( \
+ _PR_MD_GET_ATTACHED_THREAD())) \
+ _PR_INTSOFF(_is); \
+ _PR_MD_LOCK(&_PR_MD_malloc_crustylock); \
+ }
+
+#define _PR_Unlock_Malloc() if(PR_TRUE == _PR_malloc_initialised) { \
+ _PR_MD_UNLOCK(&_PR_MD_malloc_crustylock); \
+ if (_PR_MD_GET_ATTACHED_THREAD() && \
+ !_PR_IS_NATIVE_THREAD( \
+ _PR_MD_GET_ATTACHED_THREAD())) \
+ _PR_INTSON(_is); \
+ } \
+ }
+#else /* IRIX */
#define _PR_Lock_Malloc() { \
PRIntn _is; \
if(PR_TRUE == _PR_malloc_initialised) { \
@@ -134,6 +154,7 @@ static _MDLock _PR_MD_malloc_crustylock;
_PR_INTSON(_is); \
} \
}
+#endif /* IRIX */
#endif /* _PR_PTHREADS */
PR_IMPLEMENT(PRStatus) _PR_MallocInit(void)