diff --git a/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp b/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp index fa20fc15b6abde6a9f5bd9b5dd5b500e090b6ccf..75ca33a0db7867771d9b634a1e0f7974fc46b466 100644 --- a/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp +++ b/services/screenservice/sourceservice/dscreenmgr/2.0/src/dscreen.cpp @@ -532,6 +532,7 @@ int32_t DScreen::NegotiateCodecType(const std::string &rmtDecoderStr) std::vector rmtVideoDecoders; FromJson(VIDEO_DECODERS, rmtDecoderJson, rmtVideoDecoders); + cJSON_Delete(rmtDecoderJson); std::shared_ptr dhFwkKit = DScreenFwkKit::GetInstance().GetDHFwkKit(); if (dhFwkKit == nullptr) { @@ -554,6 +555,7 @@ int32_t DScreen::NegotiateCodecType(const std::string &rmtDecoderStr) std::vector localVideoEncoders; FromJson(VIDEO_ENCODERS, localVideoEncodersJson, localVideoEncoders); + cJSON_Delete(localVideoEncodersJson); return ChooseCodecType(localVideoEncoders, rmtVideoDecoders); }