diff --git a/apps/app_queue.c b/apps/app_queue.c
index dd2eb7f9aaa02372466a7d1bb8fe69da3159a9b8..cb5b9b1069771833ecf4575981601bd36cfc8530 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -1206,9 +1206,9 @@ static struct call_queue *find_queue_by_name_rt(const char *queuename, struct as
 		ast_mutex_lock(&q->lock);
 		clear_queue(q);
 		q->realtime = 1;
+		init_queue(q);		/* Ensure defaults for all parameters not set explicitly. */
 		AST_LIST_INSERT_HEAD(&queues, q, list);
 	}
-	init_queue(q);		/* Ensure defaults for all parameters not set explicitly. */
 
 	memset(tmpbuf, 0, sizeof(tmpbuf));
 	for (v = queue_vars; v; v = v->next) {