Changeset 25467 in vbox for trunk/src/VBox/Runtime/r3/win
- Timestamp:
- Dec 17, 2009 3:16:55 PM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 56133
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/r3/win/semmutex-win.cpp
r25409 r25467 162 162 */ 163 163 if (cMillies > 0) 164 RTSEMMUTEX_STRICT_BLOCK(hThreadSelf, &pThis->ValidatorRec); 164 { 165 #ifdef RTSEMMUTEX_STRICT 166 int rc9 = RTLockValidatorCheckBlocking(&pThis->ValidatorRec, hThreadSelf, 167 RTTHREADSTATE_MUTEX, true, uId, RT_SRC_POS_ARGS); 168 if (RT_FAILURE(rc9)) 169 return rc9; 170 #else 171 RTThreadBlocking(hThreadSelf, RTTHREADSTATE_MUTEX); 172 #endif 173 } 165 174 int rc = WaitForSingleObjectEx(pThis->hMtx, 166 175 cMillies == RT_INDEFINITE_WAIT ? INFINITE : cMillies, 167 176 TRUE /*bAlertable*/); 168 RT SEMMUTEX_STRICT_UNBLOCK(hThreadSelf);177 RTThreadUnblocked(hThreadSelf, RTTHREADSTATE_MUTEX); 169 178 switch (rc) 170 179 { 171 180 case WAIT_OBJECT_0: 172 181 #ifdef RTSEMMUTEX_STRICT 173 RTLockValidator WriteLockInc(RTLockValidatorSetOwner(&pThis->ValidatorRec, hThreadSelf, RTSEMMUTEX_STRICT_POS_ARGS));182 RTLockValidatorSetOwner(&pThis->ValidatorRec, hThreadSelf, RTSEMMUTEX_STRICT_POS_ARGS); 174 183 #endif 175 184 return VINF_SUCCESS; … … 227 236 if ( pThis->ValidatorRec.hThread != NIL_RTTHREAD 228 237 && pThis->ValidatorRec.hThread == RTThreadSelf()) 229 RTLockValidator WriteLockDec(RTLockValidatorUnsetOwner(&pThis->ValidatorRec));238 RTLockValidatorUnsetOwner(&pThis->ValidatorRec); 230 239 else 231 240 AssertMsgFailed(("%p hThread=%RTthrd\n", pThis, pThis->ValidatorRec.hThread));
Note:
See TracChangeset
for help on using the changeset viewer.