Changeset 60436 in vbox for trunk/src/VBox/Frontends/VirtualBox
- Timestamp:
- Apr 11, 2016 5:37:05 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
r60362 r60436 4352 4352 mValid = true; 4353 4353 4354 /* Prepare converter: */ 4354 4355 UIConverter::prepare(); 4355 4356 4356 /* Create medium enumerator but don't do any immediate caching.*/4357 /* Create medium-enumerator but don't do any immediate caching: */ 4357 4358 m_pMediumEnumerator = new UIMediumEnumerator; 4358 4359 { … … 4389 4390 void VBoxGlobal::cleanup() 4390 4391 { 4391 /* Preventing some unwanted stuff 4392 * which could de called from the other threads: */ 4392 // TODO: Shouldn't that be protected with a mutex or something? 4393 /* Remember that the cleanup is in progress preventing any unwanted 4394 * stuff which could be called from the other threads: */ 4393 4395 m_sfCleanupInProgress = true; 4394 4396 … … 4406 4408 #ifdef VBOX_GUI_WITH_PIDFILE 4407 4409 deletePidfile(); 4408 #endif 4409 4410 /* Destroy the GUI root windows _BEFORE_ the media-mess, because there is4411 code in the GUI that's using the media code an will be racing us!*/4410 #endif /* VBOX_GUI_WITH_PIDFILE */ 4411 4412 /* Destroy the GUI root windows _BEFORE_ 4413 * the media related code which could race us: */ 4412 4414 if (gpSelectorWindow) 4413 4415 UISelectorWindow::destroy(); 4414 4416 if (gpMachine) 4415 4417 UIMachine::destroy(); 4416 /* As part of recent change UIVirtualBoxEventHandler also used in runtimeUI. 4417 * This needs to be destroyed before COM cleanup. As this is supposed to be only part of selectorUI, 4418 * and needs to be reworked later doing this here for now: */ 4419 if (gpMachine) 4420 UIVirtualBoxEventHandler::destroy(); 4421 4422 /* Cleanup medium-enumerator: */ 4418 4419 /* Starting medium-enumerator cleanup: */ 4423 4420 m_mediumEnumeratorDtorRwLock.lockForWrite(); 4424 delete m_pMediumEnumerator; 4425 m_pMediumEnumerator = 0; 4421 { 4422 /* Destroy medium-enumerator: */ 4423 delete m_pMediumEnumerator; 4424 m_pMediumEnumerator = 0; 4425 } 4426 /* Finishing medium-enumerator cleanup: */ 4426 4427 m_mediumEnumeratorDtorRwLock.unlock(); 4427 4428 4428 /* Destroy extra-data manager: */ 4429 /* Destroy the global (VirtualBox) Main event handler 4430 * which is used in both Selector and Runtime UI. */ 4431 UIVirtualBoxEventHandler::destroy(); 4432 4433 /* Destroy the extra-data manager finally after everything 4434 * above which could use it already destroyed: */ 4429 4435 UIExtraDataManager::destroy(); 4430 4436 4431 /* Destroy whatever this converter stuff is: */4437 /* Cleanup converter: */ 4432 4438 UIConverter::cleanup(); 4433 4439 … … 4439 4445 m_pIconPool = 0; 4440 4446 4441 /* ensure CGuestOSType objects are no longer used*/4447 /* Ensure CGuestOSType objects are no longer used: */ 4442 4448 m_guestOSFamilyIDs.clear(); 4443 4449 m_guestOSTypes.clear();
Note:
See TracChangeset
for help on using the changeset viewer.