StimBuffApiMgr: set isBeingDestroyed just before calling finalize
This commit is contained in:
@@ -329,8 +329,6 @@ StimBuffApiManager::finalizeStimBuffApiLibCReq(
|
|||||||
co_await sbam.s.lock.getAcquireInvocationAndSuspensionPolicy());
|
co_await sbam.s.lock.getAcquireInvocationAndSuspensionPolicy());
|
||||||
}
|
}
|
||||||
|
|
||||||
lib.isBeingDestroyed.store(true);
|
|
||||||
|
|
||||||
if (!lib.stimBuffApiDesc.sal_mgmt_libOps.finalizeCInd)
|
if (!lib.stimBuffApiDesc.sal_mgmt_libOps.finalizeCInd)
|
||||||
{
|
{
|
||||||
throw std::runtime_error(
|
throw std::runtime_error(
|
||||||
@@ -341,6 +339,7 @@ StimBuffApiManager::finalizeStimBuffApiLibCReq(
|
|||||||
sscl::co::CoQutex::ReleaseHandle libGuard =
|
sscl::co::CoQutex::ReleaseHandle libGuard =
|
||||||
co_await lib.s.lock.getAcquireInvocationAndSuspensionPolicy();
|
co_await lib.s.lock.getAcquireInvocationAndSuspensionPolicy();
|
||||||
|
|
||||||
|
lib.isBeingDestroyed.store(true);
|
||||||
co_await lib.stimBuffApiDesc.sal_mgmt_libOps.finalizeCInd();
|
co_await lib.stimBuffApiDesc.sal_mgmt_libOps.finalizeCInd();
|
||||||
|
|
||||||
co_return;
|
co_return;
|
||||||
|
|||||||
Reference in New Issue
Block a user