summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarkus Mittendrein <git@maxmitti.tk>2019-05-23 14:40:40 +0200
committerMarkus Mittendrein <git@maxmitti.tk>2019-05-23 14:40:40 +0200
commit4fa7002fb14853068f7eb090b2d231f591444918 (patch)
tree669032eace7461e3be68df7e4f65345fcf8e15f0 /src
parent513c0ba21b2c363c72ca75c041b9ef852bf33ee3 (diff)
downloadmanager-4fa7002fb14853068f7eb090b2d231f591444918.tar.gz
manager-4fa7002fb14853068f7eb090b2d231f591444918.zip
Don't use guessed correction if an exact match is following in findCommand
Diffstat (limited to 'src')
-rw-r--r--src/crsm.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/crsm.cpp b/src/crsm.cpp
index aef74c1..9b6022b 100644
--- a/src/crsm.cpp
+++ b/src/crsm.cpp
@@ -1525,6 +1525,12 @@ CmdFunctionRef* CRSM::findCommand(QStringList&& cmd, ClientInterface interface,
else
{
const QStringList& guesses = guessCmd(cmdPart, interface);
+ cmd.removeLast();
+ if(const auto result = findCommand(std::move(cmd), interface, realCmd, corrections); result)
+ {
+ return result;
+ }
+
if(guesses.length() == 1)
{
QString guess = guesses.first();
@@ -1538,9 +1544,7 @@ CmdFunctionRef* CRSM::findCommand(QStringList&& cmd, ClientInterface interface,
{
corrections.append(guesses);
}
-
- cmd.removeLast();
- return findCommand(std::move(cmd), interface, realCmd, corrections);
+ return nullptr;
}
}
}