From: Mark Michelson Date: Thu, 26 Jun 2008 20:56:01 +0000 (+0000) Subject: Prior to this patch, the "queue show" command used cached X-Git-Tag: 1.4.22-rc1~177 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=033e0392e7094adb8904cfd30bf0a3d31de03ade;p=thirdparty%2Fasterisk.git Prior to this patch, the "queue show" command used cached information for realtime queues instead of giving up-to-date info. Now realtime is queried for the latest and greatest in queue info. (closes issue #12858) Reported by: bcnit Patches: queue_show.patch uploaded by putnopvut (license 60) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@125476 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_queue.c b/apps/app_queue.c index 688ffed134..736c4b3d63 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -4311,8 +4311,18 @@ static int __queues_show(struct mansession *s, int manager, int fd, int argc, ch return RESULT_SHOWUSAGE; /* We only want to load realtime queues when a specific queue is asked for. */ - if (queue_show) + if (queue_show) { load_realtime_queue(argv[2]); + } else if (ast_check_realtime("queues")) { + struct ast_config *cfg = ast_load_realtime_multientry("queues", "name LIKE", "%", (char *) NULL); + char *queuename; + if (cfg) { + for (queuename = ast_category_browse(cfg, NULL); !ast_strlen_zero(queuename); queuename = ast_category_browse(cfg, queuename)) { + load_realtime_queue(queuename); + } + ast_config_destroy(cfg); + } + } AST_LIST_LOCK(&queues); if (AST_LIST_EMPTY(&queues)) {