From: Olivier Goffart Date: Wed, 8 Feb 2017 11:30:32 +0000 (+0100) Subject: AccountManager: Fix small leak in the account migration code X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~830 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=06579a5c709ed4f9399c7924281bfe1c50785486;p=nextcloud-desktop.git AccountManager: Fix small leak in the account migration code The QSettings object was not deleted in every possible code paths --- diff --git a/src/gui/accountmanager.cpp b/src/gui/accountmanager.cpp index fdb77b8f8..9d8b3ed41 100644 --- a/src/gui/accountmanager.cpp +++ b/src/gui/accountmanager.cpp @@ -86,7 +86,7 @@ bool AccountManager::restoreFromLegacySettings() QFileInfo fi( oCCfgFile ); if( fi.isReadable() ) { - QSettings *oCSettings = new QSettings(oCCfgFile, QSettings::IniFormat); + std::unique_ptr oCSettings(new QSettings(oCCfgFile, QSettings::IniFormat)); oCSettings->beginGroup(QLatin1String("ownCloud")); // Check the theme url to see if it is the same url that the oC config was for @@ -101,9 +101,7 @@ bool AccountManager::restoreFromLegacySettings() qDebug() << "Migrate oC config if " << oCUrl << " == " << overrideUrl << ":" << (oCUrl == overrideUrl ? "Yes" : "No"); if( oCUrl == overrideUrl ) { - settings.reset( oCSettings ); - } else { - delete oCSettings; + settings = std::move(oCSettings); } } }