diff options
Diffstat (limited to 'pr/include/private/primpl.h')
-rw-r--r-- | pr/include/private/primpl.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/pr/include/private/primpl.h b/pr/include/private/primpl.h index eb1dd716..1a0b0b08 100644 --- a/pr/include/private/primpl.h +++ b/pr/include/private/primpl.h @@ -328,8 +328,10 @@ NSPR_API(PRInt32) _pr_intsOff; #define _MD_LAST_THREAD() (_pr_lastThread) #define _MD_SET_LAST_THREAD(t) (_pr_lastThread = t) +#ifndef XP_MAC #define _MD_GET_INTSOFF() (_pr_intsOff) #define _MD_SET_INTSOFF(_val) (_pr_intsOff = _val) +#endif /* The unbalanced curly braces in these two macros are intentional */ @@ -374,12 +376,20 @@ extern PRInt32 _native_threads_only; #else +#ifdef XP_MAC + +#define _PR_INTSOFF(_is) _MD_INTSOFF(_is) + +#else /* XP_MAC */ + #define _PR_INTSOFF(_is) \ PR_BEGIN_MACRO \ (_is) = _PR_MD_GET_INTSOFF(); \ _PR_MD_SET_INTSOFF(1); \ PR_END_MACRO +#endif /* XP_MAC */ + #define _PR_FAST_INTSON(_is) \ PR_BEGIN_MACRO \ _PR_MD_SET_INTSOFF(_is); \ @@ -1450,7 +1460,7 @@ struct PRMonitor { const char* name; /* monitor name for debugging */ #if defined(_PR_PTHREADS) PRLock lock; /* the lock structure */ - PRThread *owner; /* the owner of the lock or NULL */ + pthread_t owner; /* the owner of the lock or invalid */ PRCondVar *cvar; /* condition variable queue */ #else /* defined(_PR_PTHREADS) */ PRCondVar *cvar; /* associated lock and condition variable queue */ @@ -1785,7 +1795,7 @@ extern PRFileDesc *_pr_stderr; #if !defined(_PR_NO_PREEMPT) && defined(XP_UNIX) \ && !defined(_PR_PTHREADS) && !defined(_PR_GLOBAL_THREADS_ONLY) \ && !defined(PURIFY) \ - && !defined(RHAPSODY) \ + && !defined(DARWIN) \ && !defined(NEXTSTEP) \ && !defined(QNX) \ && !(defined (UNIXWARE) && defined (USE_SVR4_THREADS)) |