1
0
mirror of https://github.com/d47081/qBittorrent.git synced 2025-02-04 19:04:30 +00:00

Drop extension from generated content folder name

Try to detect whether generated content folder name contains extension
and drop it to avoid possible conflicts between file/folder names.
This commit is contained in:
Vladimir Golovnev (Glassez) 2021-01-18 10:18:40 +03:00
parent 2b9c7e04a4
commit ae29e8bbab
No known key found for this signature in database
GPG Key ID: 52A2C7DEE2DFA6F7

View File

@ -481,9 +481,17 @@ void TorrentInfo::stripRootFolder()
void TorrentInfo::addRootFolder()
{
const QString rootFolder = name();
Q_ASSERT(!rootFolder.isEmpty());
const QString originalName = name();
Q_ASSERT(!originalName.isEmpty());
const QString extension = Utils::Fs::fileExtension(originalName);
const QString rootFolder = extension.isEmpty()
? originalName
#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0))
: originalName.chopped(extension.size() + 1);
#else
: originalName.left(originalName.size() - (extension.size() + 1));
#endif
const std::string rootPrefix = Utils::Fs::toNativePath(rootFolder + QLatin1Char {'/'}).toStdString();
lt::file_storage files = m_nativeInfo->files();
files.set_name(rootFolder.toStdString());