Tolerate RPC_E_CHANGED_MODE on COM initialization
This commit is contained in:
parent
732f180117
commit
37eae89d67
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright 2016-2017 Amebis
|
Copyright 2016-2018 Amebis
|
||||||
Copyright 2016 GÉANT
|
Copyright 2016 GÉANT
|
||||||
|
|
||||||
This file is part of wxExtend.
|
This file is part of wxExtend.
|
||||||
@ -62,7 +62,7 @@ public:
|
|||||||
operator bool() const { return m_ok; }
|
operator bool() const { return m_ok; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool m_ok;
|
bool m_ok, m_initialized;
|
||||||
};
|
};
|
||||||
|
|
||||||
/// @}
|
/// @}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright 2015-2017 Amebis
|
Copyright 2015-2018 Amebis
|
||||||
Copyright 2016 GÉANT
|
Copyright 2016 GÉANT
|
||||||
|
|
||||||
This file is part of wxExtend.
|
This file is part of wxExtend.
|
||||||
@ -27,12 +27,15 @@
|
|||||||
|
|
||||||
wxCoInitializer::wxCoInitializer(DWORD dwCoInit)
|
wxCoInitializer::wxCoInitializer(DWORD dwCoInit)
|
||||||
{
|
{
|
||||||
m_ok = SUCCEEDED(::CoInitializeEx(NULL, dwCoInit));
|
HRESULT hr = ::CoInitializeEx(NULL, dwCoInit);
|
||||||
|
|
||||||
|
m_initialized = SUCCEEDED(hr);
|
||||||
|
m_ok = SUCCEEDED(hr) || hr == RPC_E_CHANGED_MODE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
wxCoInitializer::~wxCoInitializer()
|
wxCoInitializer::~wxCoInitializer()
|
||||||
{
|
{
|
||||||
if (m_ok)
|
if (m_initialized)
|
||||||
::CoUninitialize();
|
::CoUninitialize();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user