diff --git a/services/services/player/client/player_client.cpp b/services/services/player/client/player_client.cpp index 7b30af2ce5b913412f111b0d727dce019e5515f4..f8ab94a13ec30e06c5d1d365855e8aab1e1cdb7c 100644 --- a/services/services/player/client/player_client.cpp +++ b/services/services/player/client/player_client.cpp @@ -69,11 +69,9 @@ int32_t PlayerClient::CreateListenerObject() void PlayerClient::MediaServerDied() { - { - std::lock_guard lock(mutex_); - playerProxy_ = nullptr; - listenerStub_ = nullptr; - } + std::lock_guard lock(mutex_); + playerProxy_ = nullptr; + listenerStub_ = nullptr; if (callback_ != nullptr) { callback_->OnError(MSERR_SERVICE_DIED, "mediaserver is died, please create a new playback instance again"); diff --git a/services/services/player/ipc/player_service_stub.cpp b/services/services/player/ipc/player_service_stub.cpp index 6b5a56dff29af3bea24f0a9e73a23ccd8bff5519..a921f3ff7805db63243dfe5cfde7b2a3268ad99a 100644 --- a/services/services/player/ipc/player_service_stub.cpp +++ b/services/services/player/ipc/player_service_stub.cpp @@ -86,6 +86,8 @@ int32_t PlayerServiceStub::Freeze() int32_t ret = MSERR_OK; CHECK_AND_RETURN_RET_LOG(!isFrozen_, ret, "can not freeze"); (void)DisableMonitor(appPid_); + CHECK_AND_RETURN_RET_LOG(playerServer_ != nullptr, static_cast(MSERR_NO_MEMORY), + "player server is nullptr"); ret = playerServer_->Freeze(); CHECK_AND_RETURN_RET_LOG(ret == MSERR_OK, ret, "Freeze failed"); isFrozen_ = true;