The chanvar= setting should inherit the entire list of variables, not just the first...
authorTilghman Lesher <tilghman@meg.abyt.es>
Wed, 3 Feb 2010 18:34:29 +0000 (18:34 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Wed, 3 Feb 2010 18:34:29 +0000 (18:34 +0000)
(closes issue #16359)
 Reported by: raarts
 Patches:
       dahdi-setvars.diff uploaded by raarts (license 937)
 Tested by: raarts

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244505 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_dahdi.c

index 59e097d..890fc68 100644 (file)
@@ -11623,7 +11623,13 @@ static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf,
                tmp->callgroup = conf->chan.callgroup;
                tmp->pickupgroup= conf->chan.pickupgroup;
                if (conf->chan.vars) {
-                       tmp->vars = ast_variable_new(conf->chan.vars->name, conf->chan.vars->value, "");
+                       struct ast_variable *v, *tmpvar;
+                       for (v = conf->chan.vars ; v ; v = v->next) {
+                               if ((tmpvar = ast_variable_new(v->name, v->value, v->file))) {
+                                       tmpvar->next = tmp->vars;
+                                       tmp->vars = tmpvar;
+                               }
+                       }
                }
                tmp->cid_rxgain = conf->chan.cid_rxgain;
                tmp->rxgain = conf->chan.rxgain;