diff --git a/services/abilitymgr/src/app_exit_reason_data_manager.cpp b/services/abilitymgr/src/app_exit_reason_data_manager.cpp index dfb127a628bb4acec6a0d3de24af0e707fc81ddb..7d826924bfc1bcd205f86cb9c1140578e7d126d7 100644 --- a/services/abilitymgr/src/app_exit_reason_data_manager.cpp +++ b/services/abilitymgr/src/app_exit_reason_data_manager.cpp @@ -637,9 +637,10 @@ int32_t AppExitReasonDataManager::DeleteAbilityRecoverInfo( recoverInfoList.erase(std::remove(recoverInfoList.begin(), recoverInfoList.end(), recoverInfo), recoverInfoList.end()); int index = std::distance(recoverInfoList.begin(), pos); + int sessionId = sessionIdList[index]; sessionIdList.erase(std::remove(sessionIdList.begin(), sessionIdList.end(), sessionIdList[index]), sessionIdList.end()); - InnerDeleteSessionId(sessionIdList[index]); + InnerDeleteSessionId(sessionId); UpdateAbilityRecoverInfo(accessTokenId, recoverInfoList, sessionIdList); TAG_LOGI(AAFwkTag::ABILITYMGR, "DeleteAbilityRecoverInfo remove recoverInfo succeed"); }