Add QString version of GetRelativePathToClementineBin.
Avoid converting paths to and from URLs when calling this function.
This commit is contained in:
parent
ba4320859d
commit
b9f57c574f
|
@ -726,8 +726,13 @@ bool UrlOnSameDriveAsClementine(const QUrl& url) {
|
||||||
}
|
}
|
||||||
|
|
||||||
QUrl GetRelativePathToClementineBin(const QUrl& url) {
|
QUrl GetRelativePathToClementineBin(const QUrl& url) {
|
||||||
|
QString relPath = GetRelativePathToClementineBin(url.toLocalFile());
|
||||||
|
return QUrl::fromLocalFile(relPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
QString GetRelativePathToClementineBin(const QString& abspath) {
|
||||||
QDir appPath(QCoreApplication::applicationDirPath());
|
QDir appPath(QCoreApplication::applicationDirPath());
|
||||||
return QUrl::fromLocalFile(appPath.relativeFilePath(url.toLocalFile()));
|
return appPath.relativeFilePath(abspath);
|
||||||
}
|
}
|
||||||
|
|
||||||
QString PathWithoutFilenameExtension(const QString& filename) {
|
QString PathWithoutFilenameExtension(const QString& filename) {
|
||||||
|
|
|
@ -118,6 +118,8 @@ bool UrlOnSameDriveAsClementine(const QUrl& url);
|
||||||
// Get relative path to clementine binary
|
// Get relative path to clementine binary
|
||||||
QUrl GetRelativePathToClementineBin(const QUrl& url);
|
QUrl GetRelativePathToClementineBin(const QUrl& url);
|
||||||
|
|
||||||
|
QString GetRelativePathToClementineBin(const QString& abspath);
|
||||||
|
|
||||||
// Get the path without the filename extension
|
// Get the path without the filename extension
|
||||||
QString PathWithoutFilenameExtension(const QString& filename);
|
QString PathWithoutFilenameExtension(const QString& filename);
|
||||||
QString FiddleFileExtension(const QString& filename,
|
QString FiddleFileExtension(const QString& filename,
|
||||||
|
|
|
@ -218,8 +218,7 @@ void LibraryBackend::AddDirectory(const QString& path) {
|
||||||
|
|
||||||
if (Application::kIsPortable && Utilities::UrlOnSameDriveAsClementine(
|
if (Application::kIsPortable && Utilities::UrlOnSameDriveAsClementine(
|
||||||
QUrl::fromLocalFile(canonical_path))) {
|
QUrl::fromLocalFile(canonical_path))) {
|
||||||
db_path = Utilities::GetRelativePathToClementineBin(
|
db_path = Utilities::GetRelativePathToClementineBin(db_path);
|
||||||
QUrl::fromLocalFile(db_path)).toLocalFile();
|
|
||||||
qLog(Debug) << "db_path" << db_path;
|
qLog(Debug) << "db_path" << db_path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -41,8 +41,8 @@ void LibraryDirectoryModel::DirectoryDiscovered(const Directory& dir) {
|
||||||
QStandardItem* item;
|
QStandardItem* item;
|
||||||
if (Application::kIsPortable &&
|
if (Application::kIsPortable &&
|
||||||
Utilities::UrlOnSameDriveAsClementine(QUrl::fromLocalFile(dir.path))) {
|
Utilities::UrlOnSameDriveAsClementine(QUrl::fromLocalFile(dir.path))) {
|
||||||
item = new QStandardItem(Utilities::GetRelativePathToClementineBin(
|
item =
|
||||||
QUrl::fromLocalFile(dir.path)).toLocalFile());
|
new QStandardItem(Utilities::GetRelativePathToClementineBin(dir.path));
|
||||||
} else {
|
} else {
|
||||||
item = new QStandardItem(dir.path);
|
item = new QStandardItem(dir.path);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue