Added pj_strcat2

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@180 74dad513-b988-da41-8d7b-12977e46ad98
This commit is contained in:
Benny Prijono 2006-02-14 20:59:53 +00:00
parent 1f9afbafe7
commit 5a9091c374
2 changed files with 29 additions and 10 deletions

View File

@ -426,6 +426,16 @@ PJ_IDECL(int) pj_strnicmp2( const pj_str_t *str1, const char *str2,
*/
PJ_IDECL(void) pj_strcat(pj_str_t *dst, const pj_str_t *src);
/**
* Concatenate strings.
*
* @param dst The destination string.
* @param src The source string.
*/
PJ_IDECL(void) pj_strcat2(pj_str_t *dst, const char *str);
/**
* Finds a character in a string.
*

View File

@ -23,7 +23,7 @@ PJ_IDEF(pj_str_t) pj_str(char *str)
{
pj_str_t dst;
dst.ptr = str;
dst.slen = str ? pj_native_strlen(str) : 0;
dst.slen = str ? pj_ansi_strlen(str) : 0;
return dst;
}
@ -58,7 +58,7 @@ PJ_IDEF(pj_str_t*) pj_strdup2(pj_pool_t *pool,
pj_str_t *dst,
const char *src)
{
dst->slen = src ? pj_native_strlen(src) : 0;
dst->slen = src ? pj_ansi_strlen(src) : 0;
if (dst->slen) {
dst->ptr = (char*)pj_pool_alloc(pool, dst->slen);
pj_memcpy(dst->ptr, src, dst->slen);
@ -93,7 +93,7 @@ PJ_IDEF(pj_str_t*) pj_strcpy(pj_str_t *dst, const pj_str_t *src)
PJ_IDEF(pj_str_t*) pj_strcpy2(pj_str_t *dst, const char *src)
{
dst->slen = src ? pj_native_strlen(src) : 0;
dst->slen = src ? pj_ansi_strlen(src) : 0;
if (dst->slen > 0)
pj_memcpy(dst->ptr, src, dst->slen);
return dst;
@ -131,7 +131,7 @@ PJ_IDEF(int) pj_strcmp( const pj_str_t *str1, const pj_str_t *str2)
if (diff) {
return diff > 0 ? 1 : -1;
} else if (str1->ptr && str1->slen) {
return pj_native_strncmp(str1->ptr, str2->ptr, str1->slen);
return pj_ansi_strncmp(str1->ptr, str2->ptr, str1->slen);
} else {
return 0;
}
@ -141,7 +141,7 @@ PJ_IDEF(int) pj_strncmp( const pj_str_t *str1, const pj_str_t *str2,
pj_size_t len)
{
if (str1->ptr && str2->ptr)
return pj_native_strncmp(str1->ptr, str2->ptr, len);
return pj_ansi_strncmp(str1->ptr, str2->ptr, len);
else if (str2->ptr)
return str2->slen==0 ? 0 : -1;
else if (str1->ptr)
@ -156,7 +156,7 @@ PJ_IDEF(int) pj_strncmp2( const pj_str_t *str1, const char *str2,
if (len == 0)
return 0;
else if (str1->ptr && str2)
return pj_native_strncmp(str1->ptr, str2, len);
return pj_ansi_strncmp(str1->ptr, str2, len);
else if (str1->ptr)
return str1->slen==0 ? 0 : 1;
else if (str2)
@ -181,7 +181,7 @@ PJ_IDEF(int) pj_stricmp( const pj_str_t *str1, const pj_str_t *str2)
} else if (len == 0) {
return 0;
} else {
return pj_native_strnicmp(str1->ptr, str2->ptr, len);
return pj_ansi_strnicmp(str1->ptr, str2->ptr, len);
}
}
@ -257,7 +257,7 @@ PJ_IDEF(int) pj_stricmp_alnum(const pj_str_t *str1, const pj_str_t *str2)
PJ_IDEF(int) pj_stricmp2( const pj_str_t *str1, const char *str2)
{
if (str1->ptr && str2)
return pj_native_strnicmp(str1->ptr, str2, str1->slen);
return pj_ansi_strnicmp(str1->ptr, str2, str1->slen);
else if (str2)
return (*str2=='\0') ? 0 : -1;
else if (str1->ptr)
@ -270,7 +270,7 @@ PJ_IDEF(int) pj_strnicmp( const pj_str_t *str1, const pj_str_t *str2,
pj_size_t len)
{
if (str1->ptr && str2->ptr)
return pj_native_strnicmp(str1->ptr, str2->ptr, len);
return pj_ansi_strnicmp(str1->ptr, str2->ptr, len);
else if (str2->ptr)
return str2->slen==0 ? 0 : -1;
else if (str1->ptr)
@ -285,7 +285,7 @@ PJ_IDEF(int) pj_strnicmp2( const pj_str_t *str1, const char *str2,
if (len == 0)
return 0;
else if (str1->ptr && str2)
return pj_native_strnicmp(str1->ptr, str2, len);
return pj_ansi_strnicmp(str1->ptr, str2, len);
else if (str1->ptr)
return str1->slen==0 ? 0 : 1;
else if (str2)
@ -303,6 +303,15 @@ PJ_IDEF(void) pj_strcat(pj_str_t *dst, const pj_str_t *src)
}
}
PJ_IDEF(void) pj_strcat2(pj_str_t *dst, const char *str)
{
unsigned len = pj_ansi_strlen(str);
if (len) {
pj_memcpy(dst->ptr + dst->slen, str, len);
dst->slen += len;
}
}
PJ_IDEF(pj_str_t*) pj_strtrim( pj_str_t *str )
{
pj_strltrim(str);