HRESULT MV_CC_DSS_Exit(void) { HRESULT res; if (pMV_APP_DSS == NULL) MV_CC_DBG_Error(E_NOTREADY, "MV_CC_DSS_Exit", NULL); MV_OSAL_Mutex_Lock(pMV_APP_DSS->m_hGSListMutex); res = MV_CC_DSS_GlobalServiceList_Exit(); if (res != S_OK) MV_CC_DBG_Error(res, "MV_CC_DSS_Exit" \ " MV_CC_DSS_GlobalServiceList_Exit", NULL); MV_OSAL_Mutex_Unlock(pMV_APP_DSS->m_hGSListMutex); MV_OSAL_Mutex_Destroy(&(pMV_APP_DSS->m_hGSListMutex)); MV_OSAL_Mutex_Destroy(&(pMV_APP_DSS->m_SeqIDMutex)); MV_OSAL_Free(pMV_APP_DSS); pMV_APP_DSS = NULL; return S_OK; }
VOID MV_CC_DSS_GlobalServiceList_SrvInfo_Dtor(PVOID obj) { if (obj) { MV_OSAL_Free(obj); obj = NULL; } }