summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/crsm.cpp13
-rw-r--r--src/crsm.hpp2
2 files changed, 10 insertions, 5 deletions
diff --git a/src/crsm.cpp b/src/crsm.cpp
index 00ab10c..2af6080 100644
--- a/src/crsm.cpp
+++ b/src/crsm.cpp
@@ -837,12 +837,17 @@ void CRSM::cleanUp()
out("\n");
}
-QString CRSM::caseInsensitive(QString name, QString dir)
+QString CRSM::caseInsensitive(QString name, QString dir, QString trySuffix)
{
+ QString suffixedName;
+ if(!trySuffix.isEmpty())
+ {
+ suffixedName = name + trySuffix;
+ }
const QStringList& entryList = QDir(Config.Auto.Volatile.Clonk.Directory + dir + QDir::separator()).entryList();
foreach(const QString& entry, entryList)
{
- if(entry.compare(name, Qt::CaseInsensitive) == 0)
+ if(entry.compare(name, Qt::CaseInsensitive) == 0 || entry.compare(suffixedName, Qt::CaseInsensitive) == 0)
{
return entry;
}
@@ -891,7 +896,7 @@ QString CRSM::scenPath(QString scenName)
QString name = scenName.mid(split.first().length() + 1);
if(split.length() >= 2)
{
- QString folderName = caseInsensitive(split.first());
+ QString folderName = caseInsensitive(split.first(), "", ".c4f");
if(!folderName.isEmpty())
{
// QDir dir(Config.Auto.Volatile.Clonk.Directory + folderName);
@@ -972,7 +977,7 @@ QString CRSM::listScenarios(QString commandArgs)
}
else
{
- QString folder = caseInsensitive(commandArgs);
+ QString folder = caseInsensitive(commandArgs, "", ".c4f");
QFile file(Config.CRSM.ListFolder + folder + ".lst");
if(!folder.isEmpty() && file.exists() && !Config.Clonk.Server.IgnoreFolders.contains(QFileInfo(file).completeBaseName()))
{
diff --git a/src/crsm.hpp b/src/crsm.hpp
index f957054..27da66c 100644
--- a/src/crsm.hpp
+++ b/src/crsm.hpp
@@ -250,7 +250,7 @@ private:
void readScenarios();
void listC4Folders();
void cleanUp();
- QString caseInsensitive(QString name, QString dir = "");
+ QString caseInsensitive(QString name, QString dir = "", QString trySuffix = "");
QString scenPath(QString scenName);
QString listScenarios(QString commandArgs);
QString printQueue();