From: Wilfried Göesgens Date: Wed, 4 Jul 2007 21:57:41 +0000 (+0000) Subject: * don't use strlen and strcpy over here too in a wrong way. X-Git-Tag: v7.86~3267 X-Git-Url: https://code.citadel.org/?a=commitdiff_plain;h=e16e24d60a8ad0e4148809e9037430c440487aec;p=citadel.git * don't use strlen and strcpy over here too in a wrong way. --- diff --git a/webcit/tools.c b/webcit/tools.c index bf3578122..7964064f4 100644 --- a/webcit/tools.c +++ b/webcit/tools.c @@ -106,7 +106,7 @@ void extract_token(char *dest, const char *source, int parmnum, char separator, void remove_token(char *source, int parmnum, char separator) { int i; - int len; + int len, slen; int curr_parm; int start, end; @@ -115,11 +115,12 @@ void remove_token(char *source, int parmnum, char separator) start = (-1); end = (-1); - if (strlen(source) == 0) { + slen = strlen(source); + if (slen == 0) { return; } - for (i = 0; i < strlen(source); ++i) { + for (i = 0; i < slen; ++i) { if ((start < 0) && (curr_parm == parmnum)) { start = i; } @@ -136,7 +137,7 @@ void remove_token(char *source, int parmnum, char separator) if (end < 0) end = strlen(source); - strcpy(&source[start], &source[end]); + memmove(&source[start], &source[end], slen - end); }