Author: mturk Date: Tue Mar 27 07:33:18 2012 New Revision: 1305756 URL: http://svn.apache.org/viewvc?rev=1305756&view=rev Log: Add pool_calloc so we don't need to call alloc/memzero. Also make sure that excess realloced memory is zeroed
Modified: tomcat/jk/trunk/native/common/jk_pool.c tomcat/jk/trunk/native/common/jk_pool.h Modified: tomcat/jk/trunk/native/common/jk_pool.c URL: http://svn.apache.org/viewvc/tomcat/jk/trunk/native/common/jk_pool.c?rev=1305756&r1=1305755&r2=1305756&view=diff ============================================================================== --- tomcat/jk/trunk/native/common/jk_pool.c (original) +++ tomcat/jk/trunk/native/common/jk_pool.c Tue Mar 27 07:33:18 2012 @@ -92,17 +92,27 @@ void *jk_pool_alloc(jk_pool_t *p, size_t return rc; } +void *jk_pool_calloc(jk_pool_t *p, size_t size) +{ + void *rc = jk_pool_alloc(p, size); + if (rc) + memset(rc, 0, size); + return rc; +} + void *jk_pool_realloc(jk_pool_t *p, size_t sz, const void *old, size_t old_sz) { - void *rc; + char *rc; if (!p || (!old && old_sz)) { return NULL; } - rc = jk_pool_alloc(p, sz); + rc = (char *)jk_pool_alloc(p, sz); if (rc) { memcpy(rc, old, old_sz); + if (sz > old_sz) + memset(rc + old_sz, 0, sz - old_sz); } return rc; Modified: tomcat/jk/trunk/native/common/jk_pool.h URL: http://svn.apache.org/viewvc/tomcat/jk/trunk/native/common/jk_pool.h?rev=1305756&r1=1305755&r2=1305756&view=diff ============================================================================== --- tomcat/jk/trunk/native/common/jk_pool.h (original) +++ tomcat/jk/trunk/native/common/jk_pool.h Tue Mar 27 07:33:18 2012 @@ -115,6 +115,8 @@ void jk_reset_pool(jk_pool_t *p); void *jk_pool_alloc(jk_pool_t *p, size_t sz); +void *jk_pool_calloc(jk_pool_t *p, size_t sz); + void *jk_pool_realloc(jk_pool_t *p, size_t sz, const void *old, size_t old_sz); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org