VirtualBox

Ignore:
Timestamp:
Oct 2, 2014 1:53:30 PM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
96372
Message:

Main: safearray cleanup, removed unnecessary SafeArray<->vector conversions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-server/HostImpl.cpp

    r52170 r52934  
    776776#  endif /* RT_OS_LINUX */
    777777
    778     SafeIfaceArray<IHostNetworkInterface> networkInterfaces(list);
    779     networkInterfaces.detachTo(ComSafeArrayOutArg(aNetworkInterfaces));
     778    aNetworkInterfaces.resize(list.size());
     779    size_t i = 0;
     780    for (std::list<ComObjPtr<HostNetworkInterface> >::const_iterator it = list.begin(); it != list.end(); ++it, ++i)
     781        aNetworkInterfaces[i] = *it;
    780782
    781783    return S_OK;
     
    796798        return rc;
    797799
    798     SafeIfaceArray<IHostUSBDevice> resultArr;
    799     rc = m->pUSBProxyService->getDeviceCollection(ComSafeArrayAsOutParam(resultArr));
    800     if (FAILED(rc))
    801         return rc;
    802 
    803     aUSBDevices.resize(resultArr.size());
    804     for (size_t i = 0; i < resultArr.size(); ++i)
    805     {
    806          ComPtr<IHostUSBDevice> iHu = resultArr[i];
    807          iHu.queryInterfaceTo(aUSBDevices[i].asOutParam());
    808     }
    809 
    810     return rc;
     800    return m->pUSBProxyService->getDeviceCollection(aUSBDevices);
    811801#else
    812802    /* Note: The GUI depends on this method returning E_NOTIMPL with no
     
    827817{
    828818    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    829 
    830     com::SafeArray<BSTR> resultArr;
    831     HRESULT rc = m->hostDnsMonitorProxy.GetNameServers(ComSafeArrayAsOutParam(resultArr));
    832     if (FAILED(rc))
    833         return rc;
    834 
    835     aNameServers.resize(resultArr.size());
    836     for (size_t i = 0; i < resultArr.size(); ++i)
    837         aNameServers[i] = com::Utf8Str(resultArr[i]);
    838 
    839     return S_OK;
     819    return m->hostDnsMonitorProxy.GetNameServers(aNameServers);
    840820}
    841821
     
    848828    /* XXX: note here should be synchronization with thread polling state
    849829     * changes in name resoving system on host */
    850     Bstr tmpName;
    851     HRESULT rc = m->hostDnsMonitorProxy.GetDomainName(tmpName.asOutParam());
    852     if (FAILED(rc))
    853         return rc;
    854 
    855     aDomainName = com::Utf8Str(tmpName);
    856 
    857     return S_OK;
     830    return m->hostDnsMonitorProxy.GetDomainName(&aDomainName);
    858831}
    859832
     
    865838{
    866839    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    867 
    868     com::SafeArray<BSTR> resultArr;
    869     HRESULT rc = m->hostDnsMonitorProxy.GetSearchStrings(ComSafeArrayAsOutParam(resultArr));
    870     if (FAILED(rc))
    871         return rc;
    872 
    873     aSearchStrings.resize(resultArr.size());
    874     for (size_t i = 0; i < resultArr.size(); ++i)
    875         aSearchStrings[i] = com::Utf8Str(resultArr[i]);
    876 
    877     return S_OK;
     840    return m->hostDnsMonitorProxy.GetSearchStrings(aSearchStrings);
    878841}
    879842
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