- Timestamp:
- Sep 17, 2009 1:57:50 PM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 52455
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/glue/EventQueue.cpp
r23092 r23096 409 409 else 410 410 { 411 uint64_t const StartTS = RTTimeMilliTS(); 412 for (;;) 411 rc = processPendingEvents(); 412 if ( rc == VERR_TIMEOUT 413 || cMsTimeout == 0) 413 414 { 414 rc = processPendingEvents();415 if ( rc != VERR_TIMEOUT416 || cMsTimeout == 0)417 break;418 419 uint64_t cMsElapsed = RTTimeMilliTS() - StartTS;420 if (cMsElapsed >= cMsTimeout)421 {422 rc = VERR_TIMEOUT;423 break;424 }425 uint32_t cMsLeft = cMsTimeout - (unsigned)cMsElapsed;426 415 DWORD rcW = MsgWaitForMultipleObjects(1, 427 416 &mhThread, 428 417 TRUE /*fWaitAll*/, 429 cMs Left,418 cMsTimeout, 430 419 QS_ALLINPUT); 431 AssertMsgBreakStmt(rcW == WAIT_TIMEOUT || rcW == WAIT_OBJECT_0, 432 ("%d\n", rcW), 433 rc = VERR_INTERNAL_ERROR_4); 420 AssertMsgReturn(rcW == WAIT_TIMEOUT || rcW == WAIT_OBJECT_0, 421 ("%d\n", rcW), 422 VERR_INTERNAL_ERROR_4); 423 rc = processPendingEvents(); 434 424 } 435 425 }
Note:
See TracChangeset
for help on using the changeset viewer.