From 559298331b1139f7560da994790b4bb0c6dbc856 Mon Sep 17 00:00:00 2001 From: Gerhard Hoffmann Date: Mon, 29 Sep 2025 13:06:14 +0200 Subject: [PATCH] dcCandidateToInstall(): pass mount path as second parameter to prevent code duplication. --- common/include/utils_internal.h | 2 +- common/src/utils_internal.cpp | 36 ++++++++++++++++++++++++--------- 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/common/include/utils_internal.h b/common/include/utils_internal.h index 4b4b1d3..456f1e0 100644 --- a/common/include/utils_internal.h +++ b/common/include/utils_internal.h @@ -85,7 +85,7 @@ namespace internal { QString branchName(); bool customerRepoExists(); std::unique_ptr readSettings(QString const &optionalDirName = ""); - std::unique_ptr dcCandidateToInstall(QString const &dcDirectory = ""); + std::unique_ptr dcCandidateToInstall(QString const &dcDirectory, QString const &rootDir = ""); } #endif // UTILS_INTERNAL_H_INCLUDED diff --git a/common/src/utils_internal.cpp b/common/src/utils_internal.cpp index 365c6ee..9b7dc67 100644 --- a/common/src/utils_internal.cpp +++ b/common/src/utils_internal.cpp @@ -76,11 +76,11 @@ std::unique_ptr readSettings(QString const &optionalDirName) { settings.reset(new QSettings(fi.absoluteFilePath(), QSettings::IniFormat)); return settings; } else { - qCritical() << fi.absoluteFilePath() << "not found." + qCritical().noquote() << "read" << fileName << ":" << fi.absoluteFilePath() << "not found." << "Try" << internal::DEFAULT_INI_DIR; } } else { - qCritical() << optionalDirName << "not found." + qCritical().noquote() << "read" << fileName << ":" << optionalDirName << "not found." << "Try" << internal::DEFAULT_INSTALL_DIR; } } @@ -91,11 +91,11 @@ std::unique_ptr readSettings(QString const &optionalDirName) { settings.reset(new QSettings(fi.absoluteFilePath(), QSettings::IniFormat)); return settings; } else { - qCritical() << fi.absoluteFilePath() << "not found." + qCritical().noquote() << "read" << fileName << ":" << fi.absoluteFilePath() << "not found." << "Try" << internal::DEFAULT_INSTALL_DIR; } } else { - qCritical() << internal::DEFAULT_INI_DIR << "not found." + qCritical().noquote() << "read" << fileName << ":" << internal::DEFAULT_INI_DIR << "not found." << "Try" << internal::DEFAULT_INSTALL_DIR; } d = QDir{internal::DEFAULT_INSTALL_DIR}; @@ -105,22 +105,38 @@ std::unique_ptr readSettings(QString const &optionalDirName) { settings.reset(new QSettings(fi.absoluteFilePath(), QSettings::IniFormat)); return settings; } else { - qCritical() << fi.absoluteFilePath() << "not found."; + qCritical().noquote() << "read" << fileName << ":" << fi.absoluteFilePath() << "not found."; } } else { - qCritical() << internal::DEFAULT_INSTALL_DIR << "not found."; + qCritical().noquote() << "read" << fileName << ":" << internal::DEFAULT_INSTALL_DIR << "not found."; } return settings; } -std::unique_ptr dcCandidateToInstall(QString const &dcDirectory) { +std::unique_ptr dcCandidateToInstall(QString const &dcDirectory, + QString const &rootDir) { std::unique_ptr dcCandidate{nullptr}; - qCritical() << __func__ << __LINE__ << dcDirectory; + QDir dcDir; + + if (rootDir.isEmpty()) { + if (dcDirectory.isEmpty()) { + dcDir = customerRepoDcDir(); + } else { + dcDir = dcDirectory; + + } + } else { + if (dcDirectory.isEmpty()) { + dcDir = QDir::cleanPath(rootDir + QDir::separator() + customerRepoDcDir()); + } else { + dcDir = QDir::cleanPath(rootDir + QDir::separator() + dcDirectory); + } + } - QDir dcDir{dcDirectory.isEmpty() ? customerRepoDcDir() : dcDirectory}; if (dcDir.exists()) { + qCritical() << __func__ << __LINE__ << dcDir; QFileInfoList fileInfoList = dcDir.entryInfoList(QStringList("*.bin"), @@ -159,6 +175,8 @@ std::unique_ptr dcCandidateToInstall(QString const &dcDirectory) { } } } + } else { + qCritical() << __func__ << __LINE__ << dcDir << "does not exist"; } return dcCandidate;