parse(): make reentrant

This commit is contained in:
William Pitcock 2010-10-24 21:02:32 -05:00
parent 10f11ca3b5
commit 78ab5aa473
1 changed files with 2 additions and 6 deletions

View File

@ -44,11 +44,6 @@
static struct Dictionary *cmd_dict = NULL; static struct Dictionary *cmd_dict = NULL;
struct Dictionary *alias_dict = NULL; struct Dictionary *alias_dict = NULL;
/*
* NOTE: parse() should not be called recursively by other functions!
*/
static char *sender;
/* parv[0] is not used, and parv[LAST] == NULL */ /* parv[0] is not used, and parv[LAST] == NULL */
static char *para[MAXPARA + 2]; static char *para[MAXPARA + 2];
@ -116,12 +111,13 @@ string_to_array(char *string, char **parv)
/* parse() /* parse()
* *
* given a raw buffer, parses it and generates parv, parc and sender * given a raw buffer, parses it and generates parv and parc
*/ */
void void
parse(struct Client *client_p, char *pbuffer, char *bufend) parse(struct Client *client_p, char *pbuffer, char *bufend)
{ {
struct Client *from = client_p; struct Client *from = client_p;
char *sender;
char *ch; char *ch;
char *s; char *s;
char *end; char *end;