From 28b7c48cead785f24a7ed3f57d270cbf68617bca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Salvador=20Cu=C3=B1at?= Date: Mon, 30 Dec 2024 23:05:31 +0100 Subject: [PATCH] [asd-gogtrak] fix free/delete mismatch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This was using delete for a buffer allocated with calloc(). BTW this definition is more simple than previous. Signed-off-by: Salvador Cuñat --- core/import-asd.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/core/import-asd.cpp b/core/import-asd.cpp index cfb1c4af4..c97dac21a 100644 --- a/core/import-asd.cpp +++ b/core/import-asd.cpp @@ -514,11 +514,9 @@ static int asd_dive_parser(const std::string &input, struct dive *asd_dive, stru goto bailout; rc = libdc_buffer_parser(asd_dive, devdata.get(), dc_data, s); - if (rc != DC_STATUS_SUCCESS) { - delete[] dc_data; + free(dc_data); + if (rc != DC_STATUS_SUCCESS) goto bailout; - } - delete[] dc_data; // set serial in DC info, and set a node for the device. asd_dive->dcs[0].serial = std::to_string(dc_serial); create_device_node(log->devices, asd_dive->dcs[0].model, asd_dive->dcs[0].serial, asd_dive->dcs[0].model);