VirtualBox

Changeset 106900 in vbox for trunk/src/VBox/Main/src-all


Ignore:
Timestamp:
Nov 8, 2024 10:45:15 PM (6 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
165821
Message:

Main/ObjectsTracker.h/cpp: Build fix - the extpack solaris VM doesn't have std::unordered_map, so we have to use std::map or something else. Fixed atomic fFinish handling. jiraref:VBP-1187

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-all/ObjectsTracker.cpp

    r106891 r106900  
    3434#include <iprt/stream.h>
    3535#include <iprt/time.h>
    36 # include <iprt/asm.h>
    37 
    38 typedef std::unordered_map<std::string, TrackedObjectData>::const_iterator cIterTrObjDataType;
    39 typedef std::unordered_map<std::string, TrackedObjectData>::iterator iterTrObjDataType;
     36#include <iprt/asm.h>
     37
     38typedef std::map<ObjIdString_T, TrackedObjectData>::const_iterator cIterTrObjDataType;
     39typedef std::map<ObjIdString_T, TrackedObjectData>::iterator iterTrObjDataType;
    4040
    4141/////////////////////////////////////////////////////////////////////////////
     
    329329    RTCritSectEnter(&m_CritSectData);
    330330
    331     std::string sTemp(aObjId.c_str());
     331    ObjIdString_T sTemp(aObjId.c_str());
    332332    HRESULT hrc = E_FAIL;
    333333
     
    383383    RTCritSectEnter(&m_CritSectData);
    384384
    385     std::string sTemp(aObjId.c_str());
     385    ObjIdString_T sTemp(aObjId.c_str());
    386386
    387387    iterTrObjDataType pIter = m_trackedObjectsData.find(sTemp);
     
    412412        return VBOX_E_INVALID_OBJECT_STATE;
    413413
    414     std::string sTemp(aObjId.c_str());
     414    ObjIdString_T sTemp(aObjId.c_str());
    415415
    416416    vrc = VERR_NOT_FOUND;
     
    498498                                                        std::vector<com::Utf8Str>& aObjIdMap) const
    499499{
    500     for (const std::pair<const std::string, TrackedObjectData>& item : m_trackedObjectsData)
     500    for (const std::pair<const ObjIdString_T, TrackedObjectData> &item : m_trackedObjectsData)
    501501    {
    502502        /* IID found and the object is valid */
     
    655655    RTCritSectEnter(&m_CritSectData);
    656656
    657     std::string sTemp(aObjId.c_str());
     657    ObjIdString_T sTemp(aObjId.c_str());
    658658    vrc = VERR_NOT_FOUND;
    659659
     
    697697    LogFlowFuncEnter();
    698698    ASMAtomicWriteBool(&fFinish, true);
    699     return fFinish;
     699    return true;
    700700}
    701701
     
    703703{
    704704    LogFlowFuncEnter();
    705     ASMAtomicReadBool(&fFinish);
    706     return fFinish;
     705    return ASMAtomicReadBool(&fFinish);
    707706}
    708707
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