VirtualBox

Changeset 55807 in vbox


Ignore:
Timestamp:
May 11, 2015 4:58:45 PM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
100247
Message:

Main/Machine: fix self-deadlock during inaccessible machine unregistration

Location:
trunk/src/VBox/Main
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r55800 r55807  
    65236523    </method>
    65246524
    6525     <method name="unregister" wrap-hint-server="limitedcaller">
     6525    <method name="unregister" wrap-hint-server="limitedcaller,passcaller">
    65266526      <desc>
    65276527        Unregisters a machine previously registered with
  • trunk/src/VBox/Main/include/MachineImpl.h

    r55800 r55807  
    11151115    HRESULT saveSettings();
    11161116    HRESULT discardSettings();
    1117     HRESULT unregister(CleanupMode_T aCleanupMode,
     1117    HRESULT unregister(AutoCaller &aAutoCaller,
     1118                       CleanupMode_T aCleanupMode,
    11181119                       std::vector<ComPtr<IMedium> > &aMedia);
    11191120    HRESULT deleteConfig(const std::vector<ComPtr<IMedium> > &aMedia,
  • trunk/src/VBox/Main/src-server/MachineImpl.cpp

    r55800 r55807  
    50655065
    50665066/** @note Locks objects! */
    5067 HRESULT Machine::unregister(CleanupMode_T aCleanupMode,
     5067HRESULT Machine::unregister(AutoCaller &autoCaller,
     5068                            CleanupMode_T aCleanupMode,
    50685069                            std::vector<ComPtr<IMedium> > &aMedia)
    50695070{
    5070     // use AutoLimitedCaller because this call is valid on inaccessible machines as well
    5071     AutoLimitedCaller autoCaller(this);
    5072     AssertComRCReturnRC(autoCaller.rc());
    5073 
    50745071    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
    50755072
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