Changeset 25721 in vbox for trunk/src/VBox/Runtime/r3
- Timestamp:
- Jan 11, 2010 2:01:53 PM (15 years ago)
- Location:
- trunk/src/VBox/Runtime/r3
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/r3/linux/semmutex-linux.cpp
r25715 r25721 141 141 142 142 143 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX MutexSem)143 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX hMutexSem) 144 144 { 145 145 /* 146 146 * Validate input. 147 147 */ 148 if ( MutexSem == NIL_RTSEMMUTEX)148 if (hMutexSem == NIL_RTSEMMUTEX) 149 149 return VINF_SUCCESS; 150 struct RTSEMMUTEXINTERNAL *pThis = MutexSem;150 struct RTSEMMUTEXINTERNAL *pThis = hMutexSem; 151 151 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 152 152 AssertMsgReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, 153 (" MutexSem=%p u32Magic=%#x\n", pThis, pThis->u32Magic),153 ("hMutexSem=%p u32Magic=%#x\n", pThis, pThis->u32Magic), 154 154 VERR_INVALID_HANDLE); 155 155 … … 194 194 195 195 196 DECL_FORCE_INLINE(int) rtSemMutexRequest(RTSEMMUTEX MutexSem, unsigned cMillies, bool fAutoResume, PCRTLOCKVALSRCPOS pSrcPos)196 DECL_FORCE_INLINE(int) rtSemMutexRequest(RTSEMMUTEX hMutexSem, unsigned cMillies, bool fAutoResume, PCRTLOCKVALSRCPOS pSrcPos) 197 197 { 198 198 /* 199 199 * Validate input. 200 200 */ 201 struct RTSEMMUTEXINTERNAL *pThis = MutexSem;201 struct RTSEMMUTEXINTERNAL *pThis = hMutexSem; 202 202 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 203 203 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, VERR_INVALID_HANDLE); … … 343 343 344 344 #undef RTSemMutexRequest 345 RTDECL(int) RTSemMutexRequest(RTSEMMUTEX MutexSem, unsigned cMillies)345 RTDECL(int) RTSemMutexRequest(RTSEMMUTEX hMutexSem, unsigned cMillies) 346 346 { 347 347 #ifndef RTSEMMUTEX_STRICT 348 int rc = rtSemMutexRequest( MutexSem, cMillies, true, NULL);348 int rc = rtSemMutexRequest(hMutexSem, cMillies, true, NULL); 349 349 #else 350 350 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_NORMAL_API(); 351 int rc = rtSemMutexRequest( MutexSem, cMillies, true, &SrcPos);351 int rc = rtSemMutexRequest(hMutexSem, cMillies, true, &SrcPos); 352 352 #endif 353 353 Assert(rc != VERR_INTERRUPTED); … … 356 356 357 357 358 RTDECL(int) RTSemMutexRequestDebug(RTSEMMUTEX MutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL)358 RTDECL(int) RTSemMutexRequestDebug(RTSEMMUTEX hMutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL) 359 359 { 360 360 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_DEBUG_API(); 361 int rc = rtSemMutexRequest( MutexSem, cMillies, true, &SrcPos);361 int rc = rtSemMutexRequest(hMutexSem, cMillies, true, &SrcPos); 362 362 Assert(rc != VERR_INTERRUPTED); 363 363 return rc; … … 366 366 367 367 #undef RTSemMutexRequestNoResume 368 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX MutexSem, unsigned cMillies)368 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX hMutexSem, unsigned cMillies) 369 369 { 370 370 #ifndef RTSEMMUTEX_STRICT 371 return rtSemMutexRequest( MutexSem, cMillies, false, NULL);371 return rtSemMutexRequest(hMutexSem, cMillies, false, NULL); 372 372 #else 373 373 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_NORMAL_API(); 374 return rtSemMutexRequest( MutexSem, cMillies, false, &SrcPos);375 #endif 376 } 377 378 379 RTDECL(int) RTSemMutexRequestNoResumeDebug(RTSEMMUTEX MutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL)374 return rtSemMutexRequest(hMutexSem, cMillies, false, &SrcPos); 375 #endif 376 } 377 378 379 RTDECL(int) RTSemMutexRequestNoResumeDebug(RTSEMMUTEX hMutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL) 380 380 { 381 381 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_DEBUG_API(); 382 return rtSemMutexRequest( MutexSem, cMillies, false, &SrcPos);383 } 384 385 386 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX MutexSem)382 return rtSemMutexRequest(hMutexSem, cMillies, false, &SrcPos); 383 } 384 385 386 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX hMutexSem) 387 387 { 388 388 /* 389 389 * Validate input. 390 390 */ 391 struct RTSEMMUTEXINTERNAL *pThis = MutexSem;391 struct RTSEMMUTEXINTERNAL *pThis = hMutexSem; 392 392 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 393 393 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, VERR_INVALID_HANDLE); … … 440 440 441 441 442 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutex )442 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutexSem) 443 443 { 444 444 /* 445 445 * Validate. 446 446 */ 447 RTSEMMUTEXINTERNAL *pThis = hMutex ;447 RTSEMMUTEXINTERNAL *pThis = hMutexSem; 448 448 AssertPtrReturn(pThis, false); 449 449 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, false); -
trunk/src/VBox/Runtime/r3/os2/sems-os2.cpp
r25720 r25721 247 247 248 248 249 RTDECL(void) RTSemEventMultiSetSignaller(RTSEMEVENTMULTI hEventMultiSem, RTTHREAD hThread) 250 { 251 /** @todo implement RTSemEventMultiSetSignaller on OS/2 */ 252 } 253 254 255 RTDECL(void) RTSemEventMultiAddSignaller(RTSEMEVENTMULTI hEventMultiSem, RTTHREAD hThread) 256 { 257 } 258 259 260 RTDECL(void) RTSemEventMultiRemoveSignaller(RTSEMEVENTMULTI hEventMultiSem, RTTHREAD hThread) 261 { 262 } 263 249 264 250 265 … … 277 292 278 293 279 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX MutexSem) 280 { 294 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX hMutexSem) 295 { 296 if (hMutexSem == NIL_RTSEMMUTEX) 297 return VINF_SUCCESS; 298 281 299 /* 282 300 * Close semaphore handle. 283 301 */ 284 int rc = DosCloseMutexSem(SEM2HND( MutexSem));285 if (!rc) 286 return VINF_SUCCESS; 287 AssertMsgFailed(("Destroy MutexSem %p failed, rc=%d\n",MutexSem, rc));302 int rc = DosCloseMutexSem(SEM2HND(hMutexSem)); 303 if (!rc) 304 return VINF_SUCCESS; 305 AssertMsgFailed(("Destroy hMutexSem %p failed, rc=%d\n", hMutexSem, rc)); 288 306 return RTErrConvertFromOS2(rc); 289 307 } … … 309 327 310 328 #undef RTSemMutexRequestNoResume 311 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX MutexSem, unsigned cMillies)329 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX hMutexSem, unsigned cMillies) 312 330 { 313 331 /* 314 332 * Lock mutex semaphore. 315 333 */ 316 int rc = DosRequestMutexSem(SEM2HND( MutexSem), cMillies == RT_INDEFINITE_WAIT ? SEM_INDEFINITE_WAIT : cMillies);334 int rc = DosRequestMutexSem(SEM2HND(hMutexSem), cMillies == RT_INDEFINITE_WAIT ? SEM_INDEFINITE_WAIT : cMillies); 317 335 switch (rc) 318 336 { … … 324 342 default: 325 343 { 326 AssertMsgFailed(("Wait on MutexSem %p failed, rc=%d\n",MutexSem, rc));344 AssertMsgFailed(("Wait on hMutexSem %p failed, rc=%d\n", hMutexSem, rc)); 327 345 return RTErrConvertFromOS2(rc); 328 346 } … … 330 348 } 331 349 332 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX MutexSem)350 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX hMutexSem) 333 351 { 334 352 /* 335 353 * Unlock mutex semaphore. 336 354 */ 337 int rc = DosReleaseMutexSem(SEM2HND( MutexSem));338 if (!rc) 339 return VINF_SUCCESS; 340 AssertMsgFailed(("Release MutexSem %p failed, rc=%d\n",MutexSem, rc));341 return RTErrConvertFromOS2(rc); 342 } 343 344 345 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutex );355 int rc = DosReleaseMutexSem(SEM2HND(hMutexSem)); 356 if (!rc) 357 return VINF_SUCCESS; 358 AssertMsgFailed(("Release hMutexSem %p failed, rc=%d\n", hMutexSem, rc)); 359 return RTErrConvertFromOS2(rc); 360 } 361 362 363 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutexSem); 346 364 { 347 365 /* … … 351 369 TID tid; 352 370 ULONG cRecursions; 353 int rc = DosQueryMutexSem(SEM2HND( MutexSem), &pid, &tid, &cRecursions);371 int rc = DosQueryMutexSem(SEM2HND(hMutexSem), &pid, &tid, &cRecursions); 354 372 if (!rc) 355 373 return cRecursions != 0; 356 AssertMsgFailed(("DosQueryMutexSem %p failed, rc=%d\n", MutexSem, rc));374 AssertMsgFailed(("DosQueryMutexSem %p failed, rc=%d\n", hMutexSem, rc)); 357 375 return rc == ERROR_SEM_OWNER_DIED; 358 376 } 359 377 360 361 RTDECL(void) RTSemEventMultiSetSignaller(RTSEMEVENTMULTI hEventMultiSem, RTTHREAD hThread)362 {363 /** @todo implement RTSemEventMultiSetSignaller on OS/2 */364 }365 366 367 RTDECL(void) RTSemEventMultiAddSignaller(RTSEMEVENTMULTI hEventMultiSem, RTTHREAD hThread)368 {369 }370 371 372 RTDECL(void) RTSemEventMultiRemoveSignaller(RTSEMEVENTMULTI hEventMultiSem, RTTHREAD hThread)373 {374 }375 -
trunk/src/VBox/Runtime/r3/posix/semmutex-posix.cpp
r25711 r25721 127 127 128 128 129 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX MutexSem)129 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX hMutexSem) 130 130 { 131 131 /* 132 132 * Validate input. 133 133 */ 134 if ( MutexSem == NIL_RTSEMMUTEX)134 if (hMutexSem == NIL_RTSEMMUTEX) 135 135 return VINF_SUCCESS; 136 struct RTSEMMUTEXINTERNAL *pThis = MutexSem;136 struct RTSEMMUTEXINTERNAL *pThis = hMutexSem; 137 137 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 138 138 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, VERR_INVALID_HANDLE); … … 144 144 if (rc) 145 145 { 146 AssertMsgFailed(("Failed to destroy mutex sem %p, rc=%d.\n", MutexSem, rc));146 AssertMsgFailed(("Failed to destroy mutex sem %p, rc=%d.\n", hMutexSem, rc)); 147 147 return RTErrConvertFromErrno(rc); 148 148 } … … 180 180 181 181 182 DECL_FORCE_INLINE(int) rtSemMutexRequest(RTSEMMUTEX MutexSem, unsigned cMillies, PCRTLOCKVALSRCPOS pSrcPos)182 DECL_FORCE_INLINE(int) rtSemMutexRequest(RTSEMMUTEX hMutexSem, unsigned cMillies, PCRTLOCKVALSRCPOS pSrcPos) 183 183 { 184 184 /* 185 185 * Validate input. 186 186 */ 187 struct RTSEMMUTEXINTERNAL *pThis = MutexSem;187 struct RTSEMMUTEXINTERNAL *pThis = hMutexSem; 188 188 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 189 189 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, VERR_INVALID_HANDLE); … … 230 230 if (rc) 231 231 { 232 AssertMsgFailed(("Failed to lock mutex sem %p, rc=%d.\n", MutexSem, rc)); NOREF(rc);232 AssertMsgFailed(("Failed to lock mutex sem %p, rc=%d.\n", hMutexSem, rc)); NOREF(rc); 233 233 return RTErrConvertFromErrno(rc); 234 234 } … … 261 261 if (rc) 262 262 { 263 AssertMsg(rc == ETIMEDOUT, ("Failed to lock mutex sem %p, rc=%d.\n", MutexSem, rc)); NOREF(rc);263 AssertMsg(rc == ETIMEDOUT, ("Failed to lock mutex sem %p, rc=%d.\n", hMutexSem, rc)); NOREF(rc); 264 264 return RTErrConvertFromErrno(rc); 265 265 } … … 281 281 282 282 #undef RTSemMutexRequest 283 RTDECL(int) RTSemMutexRequest(RTSEMMUTEX MutexSem, unsigned cMillies)283 RTDECL(int) RTSemMutexRequest(RTSEMMUTEX hMutexSem, unsigned cMillies) 284 284 { 285 285 #ifndef RTSEMMUTEX_STRICT 286 return rtSemMutexRequest( MutexSem, cMillies, NULL);286 return rtSemMutexRequest(hMutexSem, cMillies, NULL); 287 287 #else 288 288 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_NORMAL_API(); 289 return rtSemMutexRequest( MutexSem, cMillies, &SrcPos);290 #endif 291 } 292 293 294 RTDECL(int) RTSemMutexRequestDebug(RTSEMMUTEX MutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL)289 return rtSemMutexRequest(hMutexSem, cMillies, &SrcPos); 290 #endif 291 } 292 293 294 RTDECL(int) RTSemMutexRequestDebug(RTSEMMUTEX hMutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL) 295 295 { 296 296 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_DEBUG_API(); 297 return rtSemMutexRequest( MutexSem, cMillies, &SrcPos);297 return rtSemMutexRequest(hMutexSem, cMillies, &SrcPos); 298 298 } 299 299 300 300 301 301 #undef RTSemMutexRequestNoResume 302 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX MutexSem, unsigned cMillies)302 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX hMutexSem, unsigned cMillies) 303 303 { 304 304 /* (EINTR isn't returned by the wait functions we're using.) */ 305 305 #ifndef RTSEMMUTEX_STRICT 306 return rtSemMutexRequest( MutexSem, cMillies, NULL);306 return rtSemMutexRequest(hMutexSem, cMillies, NULL); 307 307 #else 308 308 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_NORMAL_API(); 309 return rtSemMutexRequest( MutexSem, cMillies, &SrcPos);310 #endif 311 } 312 313 314 RTDECL(int) RTSemMutexRequestNoResumeDebug(RTSEMMUTEX MutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL)309 return rtSemMutexRequest(hMutexSem, cMillies, &SrcPos); 310 #endif 311 } 312 313 314 RTDECL(int) RTSemMutexRequestNoResumeDebug(RTSEMMUTEX hMutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL) 315 315 { 316 316 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_DEBUG_API(); 317 return rtSemMutexRequest( MutexSem, cMillies, &SrcPos);318 } 319 320 321 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX MutexSem)317 return rtSemMutexRequest(hMutexSem, cMillies, &SrcPos); 318 } 319 320 321 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX hMutexSem) 322 322 { 323 323 /* 324 324 * Validate input. 325 325 */ 326 struct RTSEMMUTEXINTERNAL *pThis = MutexSem;326 struct RTSEMMUTEXINTERNAL *pThis = hMutexSem; 327 327 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 328 328 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, VERR_INVALID_HANDLE); … … 367 367 if (RT_UNLIKELY(rc)) 368 368 { 369 AssertMsgFailed(("Failed to unlock mutex sem %p, rc=%d.\n", MutexSem, rc)); NOREF(rc);369 AssertMsgFailed(("Failed to unlock mutex sem %p, rc=%d.\n", hMutexSem, rc)); NOREF(rc); 370 370 return RTErrConvertFromErrno(rc); 371 371 } … … 375 375 376 376 377 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutex )377 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutexSem) 378 378 { 379 379 /* 380 380 * Validate. 381 381 */ 382 RTSEMMUTEXINTERNAL *pThis = hMutex ;382 RTSEMMUTEXINTERNAL *pThis = hMutexSem; 383 383 AssertPtrReturn(pThis, false); 384 384 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, false); -
trunk/src/VBox/Runtime/r3/win/semmutex-win.cpp
r25711 r25721 116 116 117 117 118 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX MutexSem)119 { 120 /* 121 * Validate. 122 */ 123 RTSEMMUTEXINTERNAL *pThis = MutexSem;118 RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX hMutexSem) 119 { 120 /* 121 * Validate. 122 */ 123 RTSEMMUTEXINTERNAL *pThis = hMutexSem; 124 124 if (pThis == NIL_RTSEMMUTEX) 125 125 return VINF_SUCCESS; … … 170 170 * 171 171 * @returns Same as RTSEmMutexRequestNoResume 172 * @param MutexSem The mutex handle.172 * @param hMutexSem The mutex handle. 173 173 * @param cMillies The number of milliseconds to wait. 174 174 * @param pSrcPos The source position of the caller. 175 175 */ 176 DECL_FORCE_INLINE(int) rtSemMutexRequestNoResume(RTSEMMUTEX MutexSem, unsigned cMillies, PCRTLOCKVALSRCPOS pSrcPos)177 { 178 /* 179 * Validate. 180 */ 181 RTSEMMUTEXINTERNAL *pThis = MutexSem;176 DECL_FORCE_INLINE(int) rtSemMutexRequestNoResume(RTSEMMUTEX hMutexSem, unsigned cMillies, PCRTLOCKVALSRCPOS pSrcPos) 177 { 178 /* 179 * Validate. 180 */ 181 RTSEMMUTEXINTERNAL *pThis = hMutexSem; 182 182 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 183 183 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, VERR_INVALID_HANDLE); … … 239 239 { 240 240 int rc2 = RTErrConvertFromWin32(GetLastError()); 241 AssertMsgFailed(("Wait on MutexSem %p failed, rc=%d lasterr=%d\n",MutexSem, rc, GetLastError()));241 AssertMsgFailed(("Wait on hMutexSem %p failed, rc=%d lasterr=%d\n", hMutexSem, rc, GetLastError())); 242 242 if (rc2 != VINF_SUCCESS) 243 243 return rc2; … … 251 251 252 252 #undef RTSemMutexRequestNoResume 253 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX MutexSem, unsigned cMillies)253 RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX hMutexSem, unsigned cMillies) 254 254 { 255 255 #ifndef RTSEMMUTEX_STRICT 256 return rtSemMutexRequestNoResume( MutexSem, cMillies, NULL);256 return rtSemMutexRequestNoResume(hMutexSem, cMillies, NULL); 257 257 #else 258 258 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_NORMAL_API(); 259 return rtSemMutexRequestNoResume( MutexSem, cMillies, &SrcPos);260 #endif 261 } 262 263 264 RTDECL(int) RTSemMutexRequestNoResumeDebug(RTSEMMUTEX MutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL)259 return rtSemMutexRequestNoResume(hMutexSem, cMillies, &SrcPos); 260 #endif 261 } 262 263 264 RTDECL(int) RTSemMutexRequestNoResumeDebug(RTSEMMUTEX hMutexSem, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL) 265 265 { 266 266 RTLOCKVALSRCPOS SrcPos = RTLOCKVALSRCPOS_INIT_DEBUG_API(); 267 return rtSemMutexRequestNoResume( MutexSem, cMillies, &SrcPos);268 } 269 270 271 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX MutexSem)272 { 273 /* 274 * Validate. 275 */ 276 RTSEMMUTEXINTERNAL *pThis = MutexSem;267 return rtSemMutexRequestNoResume(hMutexSem, cMillies, &SrcPos); 268 } 269 270 271 RTDECL(int) RTSemMutexRelease(RTSEMMUTEX hMutexSem) 272 { 273 /* 274 * Validate. 275 */ 276 RTSEMMUTEXINTERNAL *pThis = hMutexSem; 277 277 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 278 278 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, VERR_INVALID_HANDLE); … … 321 321 322 322 323 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutex )324 { 325 /* 326 * Validate. 327 */ 328 RTSEMMUTEXINTERNAL *pThis = hMutex ;323 RTDECL(bool) RTSemMutexIsOwned(RTSEMMUTEX hMutexSem) 324 { 325 /* 326 * Validate. 327 */ 328 RTSEMMUTEXINTERNAL *pThis = hMutexSem; 329 329 AssertPtrReturn(pThis, false); 330 330 AssertReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, false);
Note:
See TracChangeset
for help on using the changeset viewer.