提交 c6bdb303 authored 作者: Anthony Minessale's avatar Anthony Minessale

FS-2975

上级 2e074727
......@@ -809,23 +809,29 @@ SWITCH_DECLARE(char *) switch_strip_whitespace(const char *str)
{
const char *sp = str;
char *p, *s = NULL;
size_t len;
if (!sp)
return NULL;
if (zstr(sp)) {
return (char *) sp;
}
while ((*sp == 13 ) || (*sp == 10 ) || (*sp == 9 ) || (*sp == 32) || (*sp == 11) ) {
sp++;
}
if (zstr(sp)) {
return (char *) sp;
}
s = strdup(sp);
switch_assert(s);
if (!s)
return NULL;
p = s + (strlen(s) - 1);
if ((len = strlen(s)) > 0) {
p = s + (len - 1);
while ((*p == 13 ) || (*p == 10 ) || (*p == 9 ) || (*p == 32) || (*p == 11) ) {
*p-- = '\0';
while (p > s && ((*p == 13 ) || (*p == 10 ) || (*p == 9 ) || (*p == 32) || (*p == 11))) {
*p-- = '\0';
}
}
return s;
......@@ -835,9 +841,11 @@ SWITCH_DECLARE(char *) switch_strip_spaces(char *str, switch_bool_t dup)
{
char *sp = str;
char *p, *s = NULL;
size_t len;
if (!sp)
return NULL;
if (zstr(sp)) {
return sp;
}
while (*sp == ' ') {
sp++;
......@@ -845,17 +853,21 @@ SWITCH_DECLARE(char *) switch_strip_spaces(char *str, switch_bool_t dup)
if (dup) {
s = strdup(sp);
switch_assert(s);
} else {
s = sp;
}
if (!s)
return NULL;
if (zstr(s)) {
return s;
}
p = s + (strlen(s) - 1);
if ((len = strlen(s)) > 0) {
p = s + (len - 1);
while (*p == ' ') {
*p-- = '\0';
while (p && *p && p > s && *p == ' ') {
*p-- = '\0';
}
}
return s;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论