From 63c58eba9a13a3dbbfae18803fcb945c20071bcf Mon Sep 17 00:00:00 2001 From: Madhav Kanbur Date: Thu, 14 Jan 2021 18:55:34 +0530 Subject: [PATCH] main : Allocate rombuffer objects on stack * Less messy, decreases chances of memory leaks * Underlying implementation of qbytearray uses heap (hopefully?) Signed-off-by: Madhav Kanbur --- src/frontend/qt_sdl/main.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/frontend/qt_sdl/main.cpp b/src/frontend/qt_sdl/main.cpp index ed950328..7f2b8d53 100644 --- a/src/frontend/qt_sdl/main.cpp +++ b/src/frontend/qt_sdl/main.cpp @@ -1645,14 +1645,12 @@ void MainWindow::onOpenFileArchive() return; } - QByteArray *romBuffer = new QByteArray(); - QString romFileName = pickAndExtractFileFromArchive(archiveFileName, romBuffer); + QByteArray romBuffer; + QString romFileName = pickAndExtractFileFromArchive(archiveFileName, &romBuffer); if(!romFileName.isEmpty()) { - loadROM(romBuffer, archiveFileName, romFileName); + loadROM(&romBuffer, archiveFileName, romFileName); } - - delete romBuffer; } QString MainWindow::pickAndExtractFileFromArchive(QString archiveFileName, QByteArray *romBuffer) @@ -1753,14 +1751,13 @@ void MainWindow::onClickRecentFile() { // Archives QString archiveFileName = fileName; - QByteArray *romBuffer = new QByteArray; - QString romFileName = MainWindow::pickAndExtractFileFromArchive(archiveFileName, romBuffer); + QByteArray romBuffer; + QString romFileName = MainWindow::pickAndExtractFileFromArchive(archiveFileName, &romBuffer); if(!romFileName.isEmpty()) { emuThread->emuPause(); - loadROM(romBuffer, archiveFileName, romFileName); + loadROM(&romBuffer, archiveFileName, romFileName); } - delete romBuffer; } }