Browse Source

Merge remote-tracking branch 'quahu/dev' into dev

tags/2.1.1
Christopher Felegy 6 years ago
parent
commit
8fb0d5dc13
1 changed files with 24 additions and 7 deletions
  1. +24
    -7
      src/Discord.Net.Commands/CommandParser.cs

+ 24
- 7
src/Discord.Net.Commands/CommandParser.cs View File

@@ -53,6 +53,13 @@ namespace Discord.Commands
else else
c = '\0'; c = '\0';


//If we're processing a remainder parameter, ignore all other logic
if (curParam != null && curParam.IsRemainder && curPos != endPos)
{
argBuilder.Append(c);
continue;
}

//If this character is escaped, skip it //If this character is escaped, skip it
if (isEscaping) if (isEscaping)
{ {
@@ -79,13 +86,6 @@ namespace Discord.Commands
continue; continue;
} }


//If we're processing an remainder parameter, ignore all other logic
if (curParam != null && curParam.IsRemainder && curPos != endPos)
{
argBuilder.Append(c);
continue;
}

//If we're not currently processing one, are we starting the next argument yet? //If we're not currently processing one, are we starting the next argument yet?
if (curPart == ParserPart.None) if (curPart == ParserPart.None)
{ {
@@ -114,6 +114,23 @@ namespace Discord.Commands
} }
} }


//If this character is escaped, skip it
if (isEscaping)
{
if (curPos != endPos)
{
argBuilder.Append(c);
isEscaping = false;
continue;
}
}
//Are we escaping the next character?
if (c == '\\' && (curParam == null || !curParam.IsRemainder))
{
isEscaping = true;
continue;
}

//Has this parameter ended yet? //Has this parameter ended yet?
string argString = null; string argString = null;
if (curPart == ParserPart.Parameter) if (curPart == ParserPart.Parameter)


Loading…
Cancel
Save