diff --git a/apps/app_queue.c b/apps/app_queue.c
index b2078c67cfc5be9630e5f101d9467cc33ac74e44..26f503b009b7d9a1250bcbd3a6f58843f42f4dc5 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -815,7 +815,8 @@ static void init_queue(struct call_queue *q)
 	q->monfmt[0] = '\0';
 	q->periodicannouncefrequency = 0;
 	q->sound_callerannounce[0] = '\0';	/* Default, don't announce the caller that he has been answered */
-	q->members = ao2_container_alloc(37, member_hash_fn, member_cmp_fn);
+	if(!q->members)
+		q->members = ao2_container_alloc(37, member_hash_fn, member_cmp_fn);
 	q->membercount = 0;
 	q->found = 1;
 	ast_copy_string(q->sound_next, "queue-youarenext", sizeof(q->sound_next));