From 0ee40e67bc1a0409cbdefcab06ecae2e5e55a139 Mon Sep 17 00:00:00 2001 From: wbq_sky Date: Fri, 11 Mar 2022 18:13:00 +0800 Subject: [PATCH] fix the memory leak issue Signed-off-by: wbq_sky --- .../syncer/src/single_ver_serialize_manager.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/services/distributeddataservice/libs/distributeddb/syncer/src/single_ver_serialize_manager.cpp b/services/distributeddataservice/libs/distributeddb/syncer/src/single_ver_serialize_manager.cpp index 41f410fe6..c5c6bf993 100644 --- a/services/distributeddataservice/libs/distributeddb/syncer/src/single_ver_serialize_manager.cpp +++ b/services/distributeddataservice/libs/distributeddb/syncer/src/single_ver_serialize_manager.cpp @@ -346,17 +346,17 @@ int SingleVerSerializeManager::DataPacketDeSerialization(const uint8_t *buffer, return -E_VERSION_NOT_SUPPORT; } + packLen += static_cast(GenericSingleVerKvEntry::DeSerializeDatas(dataItems, parcel)); + if (parcel.IsError()) { + return -E_PARSE_FAIL; + } + auto packet = new (std::nothrow) DataRequestPacket(); if (packet == nullptr) { return -E_OUT_OF_MEMORY; } packet->SetVersion(version); - packLen += static_cast(GenericSingleVerKvEntry::DeSerializeDatas(dataItems, parcel)); - if (parcel.IsError()) { - return -E_PARSE_FAIL; - } - packet->SetData(dataItems); int errCode = DataPacketSyncerPartDeSerialization(parcel, packet, packLen, length, version); if (errCode != E_OK) { -- Gitee