=== modified file 'lib/MemPoolChunked.cc'
--- lib/MemPoolChunked.cc	2012-09-01 14:38:36 +0000
+++ lib/MemPoolChunked.cc	2013-01-11 07:19:51 +0000
@@ -141,7 +141,11 @@
     next = NULL;
     pool = aPool;
 
-    objCache = xcalloc(1, pool->chunk_size);
+    if (doZeroOnPush)
+        objCache = xcalloc(1, pool->chunk_size);
+    else
+        objCache = xmalloc(1, pool->chunk_size);
+
     freeList = objCache;
     void **Free = (void **)freeList;
 

=== modified file 'lib/MemPoolMalloc.cc'
--- lib/MemPoolMalloc.cc	2012-09-01 14:38:36 +0000
+++ lib/MemPoolMalloc.cc	2013-01-11 07:16:57 +0000
@@ -56,7 +56,10 @@
         memMeterDec(meter.idle);
         ++saved_calls;
     } else {
-        obj = xcalloc(1, obj_size);
+        if (doZeroOnPush)
+            obj = xcalloc(1, obj_size);
+        else
+            obj = xmalloc(obj_size);
         memMeterInc(meter.alloc);
     }
     memMeterInc(meter.inuse);


