From bd4505fec5370707ed7a6e8419426d577652c0e7 Mon Sep 17 00:00:00 2001 From: Rapptz Date: Tue, 18 Jul 2017 18:02:06 -0400 Subject: [PATCH] [commands] Restart the StringView properly in Context.reinvoke. The old code for some reason assumed that the length of the command would be 1. This is because when I tested this I would use single letter command names and it would "just work" when in reality it was completely incorrect. A reminder to thoroughly test instead of just fitting something to work --- discord/ext/commands/context.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/discord/ext/commands/context.py b/discord/ext/commands/context.py index 5635542d3..c250fc62c 100644 --- a/discord/ext/commands/context.py +++ b/discord/ext/commands/context.py @@ -152,6 +152,7 @@ class Context(discord.abc.Messageable): restart: bool Whether to start the call chain from the very beginning or where we left off (i.e. the command that caused the error). + The default is to start where we left off. """ cmd = self.command view = self.view @@ -166,8 +167,9 @@ class Context(discord.abc.Messageable): if restart: to_call = cmd.root_parent or cmd - view.index = len(self.prefix) + 1 + view.index = len(self.prefix) view.previous = 0 + view.get_word() # advance to get the root command else: to_call = cmd