VirtualBox

Changeset 89109 in vbox


Ignore:
Timestamp:
May 17, 2021 3:51:48 PM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
144450
Message:

FE/Qt: bugref:8161. Cleaning file manager COM stuff earlier

Location:
trunk/src/VBox/Frontends/VirtualBox/src/guestctrl
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIFileManager.cpp

    r89107 r89109  
    136136    UIFileManagerOptions::create();
    137137    uiCommon().setHelpKeyword(this, "guestadd-gc-file-manager");
     138    connect(&uiCommon(), &UICommon::sigAskToDetachCOM, this, &UIFileManager::sltCleanupListenerAndGuest);
    138139}
    139140
    140141UIFileManager::~UIFileManager()
    141142{
    142     if (m_comGuest.isOk() && m_pQtGuestListener && m_comGuestListener.isOk())
    143         cleanupListener(m_pQtGuestListener, m_comGuestListener, m_comGuest.GetEventSource());
    144     if (m_comGuestSession.isOk() && m_pQtSessionListener && m_comSessionListener.isOk())
    145         cleanupListener(m_pQtSessionListener, m_comSessionListener, m_comGuestSession.GetEventSource());
    146 
    147     if (m_comGuestSession.isOk())
    148         m_comGuestSession.Close();
    149 
    150143    saveOptions();
    151144    UIFileManagerOptions::destroy();
     
    537530}
    538531
     532void UIFileManager::sltCleanupListenerAndGuest()
     533{
     534    if (m_comGuest.isOk() && m_pQtGuestListener && m_comGuestListener.isOk())
     535        cleanupListener(m_pQtGuestListener, m_comGuestListener, m_comGuest.GetEventSource());
     536    if (m_comGuestSession.isOk() && m_pQtSessionListener && m_comSessionListener.isOk())
     537        cleanupListener(m_pQtSessionListener, m_comSessionListener, m_comGuestSession.GetEventSource());
     538
     539    if (m_comGuestSession.isOk())
     540        m_comGuestSession.Close();
     541}
     542
    539543void UIFileManager::copyToHost()
    540544{
  • trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIFileManager.h

    r89107 r89109  
    120120    void sltHandleOptionsUpdated();
    121121    void sltHandleHidePanel(UIDialogPanel *pPanel);
     122    void sltCleanupListenerAndGuest();
    122123
    123124private:
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette