diff options
author | Benny Prijono <bennylp@teluu.com> | 2010-06-16 14:49:37 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2010-06-16 14:49:37 +0000 |
commit | 08adbe0d38c5cd9e7a10bf5b07dd9fd14e824f2b (patch) | |
tree | f455d43f449778a475d65df14b5ee9ba2232acf3 /pjlib/src/pj/string.c | |
parent | dd6dbfe6e6bcfbc11056633ffc5908bf684aab9b (diff) |
Misc (re #1068): fixed possible reading string beyond the buffer in pj_strltrim() if the string only contains whitespaces (thanks Jones Desougi for the report)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3207 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib/src/pj/string.c')
-rw-r--r-- | pjlib/src/pj/string.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pjlib/src/pj/string.c b/pjlib/src/pj/string.c index 807962b0..073cf26f 100644 --- a/pjlib/src/pj/string.c +++ b/pjlib/src/pj/string.c @@ -69,8 +69,9 @@ PJ_DEF(char*) pj_stristr(const pj_str_t *str, const pj_str_t *substr) PJ_DEF(pj_str_t*) pj_strltrim( pj_str_t *str ) { + char *end = str->ptr + str->slen; register char *p = str->ptr; - while (pj_isspace(*p)) + while (p < end && pj_isspace(*p)) ++p; str->slen -= (p - str->ptr); str->ptr = p; |