VirtualBox

Changeset 99828 in vbox for trunk/include/VBox/com


Ignore:
Timestamp:
May 17, 2023 1:48:57 PM (2 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
157464
Message:

*: A bunch of adjustments that allows using /permissive- with Visual C++ (qt 6.x necessity).

Location:
trunk/include/VBox/com
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/com/array.h

    r99772 r99828  
    691691            AssertComRCReturnVoid(rc);
    692692# ifndef VBOX_WITH_TYPE_TRAITS
    693             AssertMsgReturnVoid(
    694                                    vt == VarType()
    695                                 || vt == VarTypeUnsigned(),
     693            AssertMsgReturnVoid(   vt == Traits::VarType()
     694                                || vt == Traits::VarTypeUnsigned(),
    696695                                ("Expected vartype %d or %d, got %d.\n",
    697                                  VarType(), VarTypeUnsigned(), vt));
    698 # else /* !VBOX_WITH_TYPE_TRAITS */
    699             AssertMsgReturnVoid(
    700                                    vt == VarType(),
     696                                 Traits::VarType(), Traits::VarTypeUnsigned(), vt));
     697# else  /* VBOX_WITH_TYPE_TRAITS */
     698            AssertMsgReturnVoid(vt == Traits::VarType(),
    701699                                ("Expected vartype %d, got %d.\n",
    702                                  VarType(), vt));
    703 # endif
     700                                 Traits::VarType(), vt));
     701# endif /* VBOX_WITH_TYPE_TRAITS */
    704702            rc = SafeArrayAccessData(arg, (void HUGEP **)&m.raw);
    705703            AssertComRCReturnVoid(rc);
     
    733731            SafeArray::Copy(*it, m.arr[i]);
    734732#else
    735             Copy(*it, m.raw[i]);
     733            SafeArray::Copy(*it, m.raw[i]);
    736734#endif
    737735    }
     
    762760             it != aMap.end(); ++ it, ++ i)
    763761#ifdef VBOX_WITH_XPCOM
    764             Copy(it->second, m.arr[i]);
    765 #else
    766             Copy(it->second, m.raw[i]);
     762            SafeArray::Copy(it->second, m.arr[i]);
     763#else
     764            SafeArray::Copy(it->second, m.raw[i]);
    767765#endif
    768766    }
     
    810808#else
    811809        if (m.arr)
    812             return Size(m.arr->rgsabound[0].cElements);
     810            return Traits::Size(m.arr->rgsabound[0].cElements);
    813811        return 0;
    814812#endif
     
    841839            SafeArray::Copy(m.arr[i - 1], m.arr[i]);
    842840#else
    843             Copy(m.raw[i - 1], m.raw[i]);
     841            SafeArray::Copy(m.raw[i - 1], m.raw[i]);
    844842#endif
    845843        }
     
    849847        ++ m.size;
    850848#else
    851         Copy(aElement, m.raw[0]);
     849        SafeArray::Copy(aElement, m.raw[0]);
    852850#endif
    853851        return true;
     
    879877        ++ m.size;
    880878#else
    881         Copy(aElement, m.raw[size() - 1]);
     879        SafeArray::Copy(aElement, m.raw[size() - 1]);
    882880#endif
    883881        return true;
     
    12461244#else
    12471245
    1248         SAFEARRAYBOUND bound = { VarCount(aNewSize), 0 };
     1246        SAFEARRAYBOUND bound = { Traits::VarCount(aNewSize), 0 };
    12491247        HRESULT rc;
    12501248
    12511249        if (m.arr == NULL)
    12521250        {
    1253             m.arr = CreateSafeArray(VarType(), &bound);
     1251            m.arr = Traits::CreateSafeArray(Traits::VarType(), &bound);
    12541252            AssertReturn(m.arr != NULL, false);
    12551253        }
     
    14851483        {
    14861484            if (mVal == NULL)
    1487                 Copy(&aThat, mVal);
     1485                SafeGUIDArray::Copy(&aThat, mVal);
    14881486            else
    14891487                *mVal = aThat;
     
    17231721                                ("Expected IID {%RTuuid}, got {%RTuuid}.\n", &COM_IIDOF(I), &guid));
    17241722
    1725             rc = SafeArrayAccessData(arg, (void HUGEP **)&m.raw);
     1723            rc = SafeArrayAccessData(arg, (void HUGEP **)&this->m.raw);
    17261724            AssertComRCReturnVoid(rc);
    17271725
    1728             m.arr = arg;
    1729             m.isWeak = true;
     1726            this->m.arr = arg;
     1727            this->m.isWeak = true;
    17301728
    17311729#endif /* !VBOX_WITH_XPCOM */
     
    17531751
    17541752        size_t i = 0;
    1755         for (typename List::const_iterator it = aCntr.begin();
    1756              it != aCntr.end(); ++ it, ++ i)
    1757 #ifdef VBOX_WITH_XPCOM
    1758             this->Copy(*it, Base::m.arr[i]);
    1759 #else
    1760             Copy(*it, Base::m.raw[i]);
     1753        for (typename List::const_iterator it = aCntr.begin(); it != aCntr.end(); ++it, ++i)
     1754#ifdef VBOX_WITH_XPCOM
     1755            SafeIfaceArray::Copy(*it, Base::m.arr[i]);
     1756#else
     1757            SafeIfaceArray::Copy(*it, Base::m.raw[i]);
    17611758#endif
    17621759    }
     
    17821779
    17831780        size_t i = 0;
    1784         for (typename List::const_iterator it = aCntr.begin();
    1785              it != aCntr.end(); ++ it, ++ i)
     1781        for (typename List::const_iterator it = aCntr.begin(); it != aCntr.end(); ++it, ++i)
    17861782#ifdef VBOX_WITH_XPCOM
    17871783            SafeIfaceArray::Copy(*it, Base::m.arr[i]);
    17881784#else
    1789             Copy(*it, Base::m.raw[i]);
     1785            SafeIfaceArray::Copy(*it, Base::m.raw[i]);
    17901786#endif
    17911787    }
     
    18141810
    18151811        size_t i = 0;
    1816         for (typename Map::const_iterator it = aMap.begin();
    1817              it != aMap.end(); ++ it, ++ i)
     1812        for (typename Map::const_iterator it = aMap.begin(); it != aMap.end(); ++it, ++i)
    18181813#ifdef VBOX_WITH_XPCOM
    18191814            SafeIfaceArray::Copy(it->second, Base::m.arr[i]);
    18201815#else
    1821             Copy(it->second, Base::m.raw[i]);
     1816            SafeIfaceArray::Copy(it->second, Base::m.raw[i]);
    18221817#endif
    18231818    }
     
    18471842        size_t i = 0;
    18481843        for (typename Map::const_iterator it = aMap.begin();
    1849              it != aMap.end(); ++ it, ++ i)
     1844             it != aMap.end(); ++it, ++i)
    18501845#ifdef VBOX_WITH_XPCOM
    18511846            SafeIfaceArray::Copy(it->second, Base::m.arr[i]);
    18521847#else
    1853             Copy(it->second, Base::m.raw[i]);
     1848            SafeIfaceArray::Copy(it->second, Base::m.raw[i]);
    18541849#endif
    18551850    }
     
    18601855        SafeIfaceArray::Copy(obj, Base::m.arr[iIdx]);
    18611856#else
    1862         Copy(obj, Base::m.raw[iIdx]);
     1857        SafeIfaceArray::Copy(obj, Base::m.raw[iIdx]);
    18631858#endif
    18641859    }
  • trunk/include/VBox/com/microatl.h

    r98103 r99828  
    239239        if (fInitialLock)
    240240        {
    241             HRESULT hrc = Lock();
     241            HRESULT hrc = this->Lock();
    242242            if (FAILED(hrc))
    243243                throw hrc;
     
    724724    {
    725725        // Catch refcount screwups by setting refcount to -(LONG_MAX/2).
    726         m_iRef = -(LONG_MAX/2);
    727         FinalRelease();
     726        this->m_iRef = -(LONG_MAX/2);
     727        this->FinalRelease();
    728728    }
    729729    STDMETHOD_(ULONG, AddRef)() throw()
     
    731731        // If you get errors about undefined InternalAddRef then Base does not
    732732        // derive from CComObjectRootEx.
    733         ULONG l = InternalAddRef();
     733        ULONG l = this->InternalAddRef();
    734734        if (l == 2)
    735735        {
     
    743743        // If you get errors about undefined InternalRelease then Base does not
    744744        // derive from CComObjectRootEx.
    745         ULONG l = InternalRelease();
     745        ULONG l = this->InternalRelease();
    746746        if (l == 0)
    747747            delete this;
     
    757757        // If you get errors about undefined _InternalQueryInterface then
    758758        // double check BEGIN_COM_MAP in the class definition.
    759         return _InternalQueryInterface(iid, ppvObj);
     759        return this->_InternalQueryInterface(iid, ppvObj);
    760760    }
    761761    static HRESULT WINAPI CreateInstance(CComObjectCached<Base> **pp) throw()
     
    792792    {
    793793        // Catch refcount screwups by setting refcount to -(LONG_MAX/2).
    794         m_iRef = -(LONG_MAX/2);
    795         FinalRelease();
     794        this->m_iRef = -(LONG_MAX/2);
     795        this->FinalRelease();
    796796    }
    797797    STDMETHOD_(ULONG, AddRef)() throw()
     
    799799        // If you get errors about undefined InternalAddRef then Base does not
    800800        // derive from CComObjectRootEx.
    801         return InternalAddRef();
     801        return this->InternalAddRef();
    802802    }
    803803    STDMETHOD_(ULONG, Release)() throw()
     
    805805        // If you get errors about undefined InternalRelease then Base does not
    806806        // derive from CComObjectRootEx.
    807         ULONG l = InternalRelease();
     807        ULONG l = this->InternalRelease();
    808808        if (l == 0)
    809809            delete this;
     
    814814        // If you get errors about undefined _InternalQueryInterface then
    815815        // double check BEGIN_COM_MAP in the class definition.
    816         return _InternalQueryInterface(iid, ppvObj);
     816        return this->_InternalQueryInterface(iid, ppvObj);
    817817    }
    818818};
     
    10511051        AssertMsg(_pAtlModule, ("ATL: referring to ATL module without having one declared in this linking namespace\n"));
    10521052        // Catch refcount screwups by setting refcount to -(LONG_MAX/2).
    1053         m_iRef = -(LONG_MAX/2);
    1054         FinalRelease();
     1053        this->m_iRef = -(LONG_MAX/2);
     1054        this->FinalRelease();
    10551055        _pAtlModule->Unlock();
    10561056    }
     
    10591059        // If you get errors about undefined InternalAddRef then Base does not
    10601060        // derive from CComObjectRootEx.
    1061         return InternalAddRef();
     1061        return this->InternalAddRef();
    10621062    }
    10631063    STDMETHOD_(ULONG, Release)()
     
    10651065        // If you get errors about undefined InternalRelease then Base does not
    10661066        // derive from CComObjectRootEx.
    1067         ULONG l = InternalRelease();
     1067        ULONG l = this->InternalRelease();
    10681068        if (l == 0)
    10691069            delete this;
     
    10741074        // If you get errors about undefined _InternalQueryInterface then
    10751075        // double check BEGIN_COM_MAP in the class definition.
    1076         return _InternalQueryInterface(iid, ppvObj);
     1076        return this->_InternalQueryInterface(iid, ppvObj);
    10771077    }
    10781078
     
    10841084        HRESULT hrc = E_OUTOFMEMORY;
    10851085        CComObject<Base> *p = NULL;
     1086#ifdef RT_EXCEPTIONS_ENABLED
    10861087        try
    10871088        {
     1089#endif
    10881090            p = new CComObject<Base>();
     1091#ifdef RT_EXCEPTIONS_ENABLED
    10891092        }
    10901093        catch (std::bad_alloc &)
     
    10921095            p = NULL;
    10931096        }
     1097#endif
    10941098        if (p)
    10951099        {
    10961100            p->InternalFinalConstructAddRef();
     1101#ifdef RT_EXCEPTIONS_ENABLED
    10971102            try
    10981103            {
     1104#endif
    10991105                hrc = p->_AtlInitialConstruct();
    11001106                if (SUCCEEDED(hrc))
    11011107                    hrc = p->FinalConstruct();
     1108#ifdef RT_EXCEPTIONS_ENABLED
    11021109            }
    11031110            catch (std::bad_alloc &)
     
    11051112                hrc = E_OUTOFMEMORY;
    11061113            }
     1114#endif
    11071115            p->InternalFinalConstructRelease();
    11081116            if (FAILED(hrc))
     
    11561164    CComContainedObject(void *pv)
    11571165    {
    1158         m_pOuterUnknown = (IUnknown *)pv;
     1166        this->m_pOuterUnknown = (IUnknown *)pv;
    11591167    }
    11601168
    11611169    STDMETHOD_(ULONG, AddRef)() throw()
    11621170    {
    1163         return OuterAddRef();
     1171        return this->OuterAddRef();
    11641172    }
    11651173    STDMETHOD_(ULONG, Release)() throw()
    11661174    {
    1167         return OuterRelease();
     1175        return this->OuterRelease();
    11681176    }
    11691177    STDMETHOD(QueryInterface)(REFIID iid, void **ppvObj) throw()
    11701178    {
    1171         return OuterQueryInterface(iid, ppvObj);
     1179        return this->OuterQueryInterface(iid, ppvObj);
    11721180    }
    11731181};
     
    11881196        AssertMsg(_pAtlModule, ("ATL: referring to ATL module without having one declared in this linking namespace\n"));
    11891197        // Catch refcount screwups by setting refcount to -(LONG_MAX/2).
    1190         m_iRef = -(LONG_MAX/2);
    1191         FinalRelease();
     1198        this->m_iRef = -(LONG_MAX/2);
     1199        this->FinalRelease();
    11921200        _pAtlModule->Unlock();
    11931201    }
     
    11961204        HRESULT hrc = m_Aggregated._AtlInitialConstruct();
    11971205        if (SUCCEEDED(hrc))
    1198         {
    11991206            hrc = CComObjectRootEx<typename Aggregated::_ThreadModel::ThreadModelNoCS>::_AtlInitialConstruct();
    1200         }
    12011207        return hrc;
    12021208    }
     
    12141220    STDMETHOD_(ULONG, AddRef)()
    12151221    {
    1216         return InternalAddRef();
     1222        return this->InternalAddRef();
    12171223    }
    12181224    STDMETHOD_(ULONG, Release)()
    12191225    {
    1220         ULONG l = InternalRelease();
     1226        ULONG l = this->InternalRelease();
    12211227        if (l == 0)
    12221228            delete this;
     
    13291335    }
    13301336    // IClassFactory
    1331     STDMETHOD(CreateInstance)(LPUNKNOWN pUnkOuter, REFIID riid, void **pvObj)
     1337    STDMETHOD(CreateInstance)(LPUNKNOWN pUnkOuter, REFIID riid, void **ppvObj)
    13321338    {
    13331339        HRESULT hrc = E_POINTER;
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