summaryrefslogtreecommitdiff
path: root/pjlib/include/pj/string_i.h
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-03-02 21:12:28 +0000
committerBenny Prijono <bennylp@teluu.com>2006-03-02 21:12:28 +0000
commit7e1af4a66ce578c9b8d7a4dcd39a3a41e8663b9b (patch)
tree44edefe34c7bcc732793349d217dabca5b57f2f5 /pjlib/include/pj/string_i.h
parent5bd796e66f3ae6049a43e8e3cfc938d37e061174 (diff)
Added pj_strdup2_with_null
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@263 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib/include/pj/string_i.h')
-rw-r--r--pjlib/include/pj/string_i.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/pjlib/include/pj/string_i.h b/pjlib/include/pj/string_i.h
index 928c8852..25fc0368 100644
--- a/pjlib/include/pj/string_i.h
+++ b/pjlib/include/pj/string_i.h
@@ -43,11 +43,9 @@ PJ_IDEF(pj_str_t*) pj_strdup_with_null( pj_pool_t *pool,
pj_str_t *dst,
const pj_str_t *src)
{
+ dst->ptr = (char*)pj_pool_alloc(pool, src->slen+1);
if (src->slen) {
- dst->ptr = (char*)pj_pool_alloc(pool, src->slen+1);
pj_memcpy(dst->ptr, src->ptr, src->slen);
- } else {
- dst->ptr = (char*)pj_pool_alloc(pool, 1);
}
dst->slen = src->slen;
dst->ptr[dst->slen] = '\0';
@@ -68,6 +66,18 @@ PJ_IDEF(pj_str_t*) pj_strdup2(pj_pool_t *pool,
return dst;
}
+PJ_IDEF(pj_str_t*) pj_strdup2_with_null( pj_pool_t *pool,
+ pj_str_t *dst,
+ const char *src)
+{
+ dst->slen = src ? pj_ansi_strlen(src) : 0;
+ dst->ptr = (char*)pj_pool_alloc(pool, dst->slen+1);
+ if (dst->slen) {
+ pj_memcpy(dst->ptr, src, dst->slen);
+ }
+ dst->ptr[dst->slen] = '\0';
+ return dst;
+}
PJ_IDEF(pj_str_t) pj_strdup3(pj_pool_t *pool, const char *src)
{