]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
return error instead of segfaulting on pool allocation failure when creating a queue.
authorMichael Jerris <mike@jerris.com>
Sun, 20 Jan 2008 21:49:01 +0000 (21:49 +0000)
committerMichael Jerris <mike@jerris.com>
Sun, 20 Jan 2008 21:49:01 +0000 (21:49 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7307 d0543943-73ff-0310-b7d9-9358b9ac24b2

libs/apr-util/misc/apr_queue.c

index a869cf9f3a5b902b44ebb6953a85b2c2db45909b..28d79afcb5fcf158467e0fbe158e15edd7453a08 100644 (file)
@@ -126,7 +126,9 @@ APU_DECLARE(apr_status_t) apr_queue_create(apr_queue_t **q,
     }
 
     /* Set all the data in the queue to NULL */
-    queue->data = apr_pcalloc(a, queue_capacity * sizeof(void*));
+    queue->data = apr_palloc(a, queue_capacity * sizeof(void*));
+       if (!queue->data) return APR_ENOMEM;
+       memset(queue->data, 0, queue_capacity * sizeof(void*));
     queue->bounds = queue_capacity;
     queue->nelts = 0;
     queue->in = 0;