From dbf630c424e877630038c567441845b6f4090627 Mon Sep 17 00:00:00 2001 From: Daniele Forsi Date: Sat, 6 Apr 2024 20:53:21 +0200 Subject: [PATCH] Fix memleaks found with AddressSanitizer/LeakSanitizer Fixes: Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7eff8bcf46c8 in operator new(unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:95 #1 0x7eff897b484d in DeviceUserArgs::serialize() const sdrbase/device/deviceuserargs.cpp:43 #2 0x7eff897f4904 in MainSettings::save() const sdrbase/settings/mainsettings.cpp:237 #3 0x7eff8b578654 in MainWindow::closeEvent(QCloseEvent*) sdrgui/mainwindow.cpp:1749 #4 0x7eff877a5dc7 in QWidget::event(QEvent*) (/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1a5dc7) (BuildId: 983eca66d9695a1892aa796da4160d8d6f9b9ac4) Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7eff8bcf46c8 in operator new(unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cpp:95 #1 0x7eff897b484d in DeviceUserArgs::serialize() const sdrbase/device/deviceuserargs.cpp:43 #2 0x7eff897f4904 in MainSettings::save() const sdrbase/settings/mainsettings.cpp:237 #3 0x7eff8b552c9a in MainWindow::~MainWindow() sdrgui/mainwindow.cpp:326 #4 0x564e8b36e1e5 in runQtApplication app/main.cpp:212 #5 0x564e8b36bab7 in main app/main.cpp:248 #6 0x7eff862456c9 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 --- sdrbase/device/deviceuserargs.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdrbase/device/deviceuserargs.cpp b/sdrbase/device/deviceuserargs.cpp index aae94111f..384abe761 100644 --- a/sdrbase/device/deviceuserargs.cpp +++ b/sdrbase/device/deviceuserargs.cpp @@ -40,8 +40,8 @@ QByteArray DeviceUserArgs::serialize() const { SimpleSerializer s(1); QByteArray data; - QDataStream *stream = new QDataStream(&data, QIODevice::WriteOnly); - *stream << m_argsByDevice; + QDataStream stream(&data, QIODevice::WriteOnly); + stream << m_argsByDevice; s.writeBlob(1, data); return s.final(); }