From: Richard Mudgett Date: Fri, 19 Dec 2014 17:34:33 +0000 (+0000) Subject: chan_dahdi: Don't ignore setvar when using configuration section scheme. X-Git-Tag: 14.0.0-beta1~1374 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b508b3474eeb6a415a1886571e59d08c228a773e;p=thirdparty%2Fasterisk.git chan_dahdi: Don't ignore setvar when using configuration section scheme. When the configuration section scheme of chan_dahdi.conf is used (keyword dahdichan instead of channel) all setvar= options are completely ignored. No variable defined this way appears in the created DAHDI channels. * Move the clearing of setvar values to after the deferred processing of dahdichan. AST-1378 #close Reported by: Guenther Kelleter Patch by: Guenther Kelleter ........ Merged revisions 429825 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 429829 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@429830 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index ddaeccd4fb..bb6bd2d425 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -18927,12 +18927,6 @@ static int process_dahdi(struct dahdi_chan_conf *confp, const char *cat, struct ast_log(LOG_WARNING, "Ignoring any changes to '%s' (on reload) at line %d.\n", v->name, v->lineno); } - /* Since confp has already filled invidual dahdi_pvt objects with channels at this point, clear the variables in confp's pvt. */ - if (confp->chan.vars) { - ast_variables_destroy(confp->chan.vars); - confp->chan.vars = NULL; - } - if (dahdichan) { /* Process the deferred dahdichan value. */ if (build_channels(confp, dahdichan->value, reload, dahdichan->lineno)) { @@ -18946,6 +18940,15 @@ static int process_dahdi(struct dahdi_chan_conf *confp, const char *cat, struct } } + /* + * Since confp has already filled individual dahdi_pvt objects with channels + * at this point, clear the variables in confp's pvt. + */ + if (confp->chan.vars) { + ast_variables_destroy(confp->chan.vars); + confp->chan.vars = NULL; + } + /* mark the first channels of each DAHDI span to watch for their span alarms */ for (tmp = iflist, y=-1; tmp; tmp = tmp->next) { if (!tmp->destroy && tmp->span != y) {