Correctly handle a last argument prefixed with : for any protocol message
The previous handling for this had the : prefixing the last protocol argument reappear after a PasteArgs() call. This caused problems with the inspircd server, which prefixes the final argument for every protocol message with :. In particular the MODE command was problematic. See https://github.com/inspircd/inspircd/issues/1636 Reported-by: trn
This commit is contained in:
@@ -366,7 +366,9 @@ int BX_BreakArgs(char *Input, char **Sender, char **OutPut, int ig_sender)
|
||||
|
||||
if (*Input == ':')
|
||||
{
|
||||
OutPut[ArgCount++] = ++Input;
|
||||
/* Squash the : so if PasteArgs() is called it doesn't reappear */
|
||||
ov_strcpy(Input, Input + 1);
|
||||
OutPut[ArgCount++] = Input;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user