summaryrefslogtreecommitdiff
path: root/ace/OS.i
diff options
context:
space:
mode:
Diffstat (limited to 'ace/OS.i')
-rw-r--r--ace/OS.i6
1 files changed, 5 insertions, 1 deletions
diff --git a/ace/OS.i b/ace/OS.i
index 6ffc6f973ac..7684b82e0e0 100644
--- a/ace/OS.i
+++ b/ace/OS.i
@@ -1598,7 +1598,11 @@ ACE_OS::mutex_init (ACE_mutex_t *m,
if (m->proc_mutex_ == 0)
ACE_FAIL_RETURN (-1);
else
- return 0;
+ {
+ // Make sure to set errno to ERROR_ALREADY_EXISTS if necessary.
+ ACE_OS::set_errno_to_last_error ();
+ return 0;
+ }
case USYNC_THREAD:
return ACE_OS::thread_mutex_init (&m->thr_mutex_,
type,