UDPTL: Fix a regression where UDPTL won't load default settings

If the file udptl.conf is unavailable at startup, UDPTL will fail to
initialize and while it makes some noise, it isn't immediately
obvious why consumers start to fail when using it. This patch makes
UDPTL load as though an empty config was provided  when udptl is
unavailable at startup.

(closes issue ASTERISK-22349)
Reported by: Jonathan Rose
Review: https://reviewboard.asterisk.org/r/2773/
........

Merged revisions 397365 from http://svn.asterisk.org/svn/asterisk/branches/11


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@397366 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Jonathan Rose 2013-08-21 23:09:14 +00:00
parent b816fe45b6
commit 75bb247d2b
1 changed files with 8 additions and 1 deletions

View File

@ -1458,8 +1458,15 @@ static int removed_options_handler(const struct aco_option *opt, struct ast_vari
static void __ast_udptl_reload(int reload)
{
RAII_VAR(struct udptl_config *, udptl_cfg, udptl_snapshot_alloc(), ao2_cleanup);
if (aco_process_config(&cfg_info, reload) == ACO_PROCESS_ERROR) {
ast_log(LOG_WARNING, "Could not reload udptl config\n");
if (!reload) {
if (!aco_set_defaults(&general_option, "general", udptl_cfg->general)) {
ast_log(LOG_WARNING, "Could not load udptl config; using defaults\n");
ao2_global_obj_replace(globals, udptl_cfg);
}
}
}
}