Fix additional issue with aliases building incorrectly

This commit is contained in:
FiniteReality
2016-11-25 21:15:39 +00:00
parent 05fb81c617
commit bc76e38ce5

View File

@@ -49,15 +49,21 @@ namespace Discord.Commands
while (builderStack.Count() > 0) while (builderStack.Count() > 0)
{ {
ModuleBuilder level = builderStack.Pop(); // get the topmost builder ModuleBuilder level = builderStack.Pop(); //get the topmost builder
if (result == null) if (result == null)
result = level.Aliases.ToList(); // create a shallow copy so we don't overwrite the builder unexpectedly {
if (level.Aliases.Count > 0)
result = level.Aliases.ToList(); //create a shallow copy so we don't overwrite the builder unexpectedly
}
else if (result.Count() > level.Aliases.Count) else if (result.Count() > level.Aliases.Count)
result = result.Permutate(level.Aliases, (first, second) => first + " " + second); result = result.Permutate(level.Aliases, (first, second) => first + " " + second);
else else
result = level.Aliases.Permutate(result, (second, first) => first + " " + second); result = level.Aliases.Permutate(result, (second, first) => first + " " + second);
} }
if (result == null) //there were no aliases; default to an empty list
result = new List<string>();
return result; return result;
} }