From e7cb53e8b2b2defe3882e52693709e26ef83387d Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Thu, 7 Jun 2007 21:16:07 +0000 Subject: [PATCH] Fix loading persistent queue members when using realtime configuration for queues. Also, remove an unneeded leading slash for the astdb family. (issue #9911, patch by atis) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@68280 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_queue.c | 6 +++++- channels/chan_agent.c | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/app_queue.c b/apps/app_queue.c index 73e0117c45..54400bd6aa 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -235,7 +235,7 @@ static char *app_ql_descrip = "Example: QueueLog(101|${UNIQUEID}|${AGENT}|WENTONBREAK|600)\n"; /*! \brief Persistent Members astdb family */ -static const char *pm_family = "/Queue/PersistentMembers"; +static const char *pm_family = "Queue/PersistentMembers"; /* The maximum length of each persistent member queue database entry */ #define PM_MAX_LEN 8192 @@ -2938,10 +2938,14 @@ static void reload_queue_members(void) break; ast_mutex_unlock(&cur_queue->lock); } + + if (!cur_queue) + cur_queue = load_realtime_queue(queue_name); if (!cur_queue) { /* If the queue no longer exists, remove it from the * database */ + ast_log(LOG_WARNING, "Error loading persistent queue: '%s': it does not exist\n", queue_name); ast_db_del(pm_family, queue_name); continue; } else diff --git a/channels/chan_agent.c b/channels/chan_agent.c index cba176761a..ac9d602cb2 100644 --- a/channels/chan_agent.c +++ b/channels/chan_agent.c @@ -144,7 +144,7 @@ static char moh[80] = "default"; #define AST_MAX_BUF 256 #define AST_MAX_FILENAME_LEN 256 -static const char pa_family[] = "/Agents"; /*!< Persistent Agents astdb family */ +static const char pa_family[] = "Agents"; /*!< Persistent Agents astdb family */ #define PA_MAX_LEN 2048 /*!< The maximum length of each persistent member agent database entry */ static int persistent_agents = 0; /*!< queues.conf [general] option */