diff --git a/services/audio_policy/server/service/service_main/include/audio_policy_server.h b/services/audio_policy/server/service/service_main/include/audio_policy_server.h index 32313acdbb2b10d4a9adb1b47b93c79874f8bf37..aad7504a058c7244a7aca75f455dcc729b17f2c3 100644 --- a/services/audio_policy/server/service/service_main/include/audio_policy_server.h +++ b/services/audio_policy/server/service/service_main/include/audio_policy_server.h @@ -630,7 +630,7 @@ public: int32_t SetCollaborativePlaybackEnabledForDevice( const std::shared_ptr &selectedAudioDevice, bool enabled) override; - + int32_t IsCollaborativePlaybackEnabledForDevice( const std::shared_ptr &selectedAudioDevice, bool &enabled) override; @@ -893,6 +893,8 @@ private: std::mutex micStateChangeMutex_; std::mutex clientDiedListenerStateMutex_; std::mutex subscribeVolumeKey_; + std::mutex mtxSetAudioClientInfoMgrCallback_; + std::mutex mtxSetAudioVKBInfoMgrCallback_; std::shared_ptr audioPolicyServerHandler_; bool volumeApplyToAll_ = false; diff --git a/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp b/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp index 45bbb04a5fc95f0368da98c9ee36fbe025382731..05b542d3c060cc68e82158334fd0fad7e9378026 100644 --- a/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp +++ b/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp @@ -2615,6 +2615,7 @@ int32_t AudioPolicyServer::SetAudioClientInfoMgrCallback(const sptr lg(mtxSetAudioClientInfoMgrCallback_); sptr callback = iface_cast(object); if (callback != nullptr) { @@ -2648,6 +2649,7 @@ int32_t AudioPolicyServer::SetAudioVKBInfoMgrCallback(const sptr return ERR_OPERATION_FAILED; } + lock_guard lg(mtxSetAudioVKBInfoMgrCallback_); sptr callback = iface_cast(object); if (callback != nullptr) {