mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-07-31 12:00:16 -07:00
Make settings file recovery more robust
We should not blindly remove the leftover settings file, as the following write() operation could fail and the user would lost all settings. We should try renaming it instead.
This commit is contained in:
parent
708b5a6904
commit
099314d17f
1 changed files with 6 additions and 2 deletions
|
@ -241,8 +241,12 @@ QVariantHash TransactionalSettings::read()
|
|||
.arg(Utils::Fs::toNativePath(newPath))
|
||||
, Log::WARNING);
|
||||
|
||||
Utils::Fs::forceRemove(newPath);
|
||||
write(res);
|
||||
QString finalPath = newPath;
|
||||
int index = finalPath.lastIndexOf("_new", -1, Qt::CaseInsensitive);
|
||||
finalPath.remove(index, 4);
|
||||
|
||||
Utils::Fs::forceRemove(finalPath);
|
||||
QFile::rename(newPath, finalPath);
|
||||
}
|
||||
else {
|
||||
deserialize(m_name, res);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue