From 0d4ce02e5bb99c4e9a276b38d12c9e1164e0c0bf Mon Sep 17 00:00:00 2001 From: Jeff Peeler <jpeeler@digium.com> Date: Tue, 29 Apr 2008 22:54:14 +0000 Subject: [PATCH] Fixes a problem where all the templates were marked as dead no matter what. The templates should only be marked as dead if a configuration file has been successfully loaded and has changes. Bug found while making API documentation for 1.6.0. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114866 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/iax2-provision.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/channels/iax2-provision.c b/channels/iax2-provision.c index fa5cdb0933..4a5281c05e 100644 --- a/channels/iax2-provision.c +++ b/channels/iax2-provision.c @@ -491,14 +491,16 @@ int iax_provision_reload(int reload) struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 }; if (!provinit) iax_provision_init(); - /* Mark all as dead. No need for locking */ - cur = templates; - while(cur) { - cur->dead = 1; - cur = cur->next; - } + cfg = ast_config_load2("iaxprov.conf", "chan_iax2", config_flags); if (cfg != NULL && cfg != CONFIG_STATUS_FILEUNCHANGED) { + /* Mark all as dead. No need for locking */ + cur = templates; + while(cur) { + cur->dead = 1; + cur = cur->next; + } + /* Load as appropriate */ cat = ast_category_browse(cfg, NULL); while(cat) { -- GitLab