From: Kevin P. Fleming Date: Mon, 6 Oct 2008 15:57:49 +0000 (+0000) Subject: ensure that the private structure for pseudo channels is created without 'leaking... X-Git-Tag: 1.4.23-rc1~57 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e1fc602c644600fdfc2e3a5f336c1f9fe667bd5e;p=thirdparty%2Fasterisk.git ensure that the private structure for pseudo channels is created without 'leaking' configuration data from other configured channels (closes issue #13555) Reported by: jeffg Patches: issue_13555.patch uploaded by kpfleming (license 421) Tested by: jeffg git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@146643 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 91160f1704..476a24c628 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -11650,14 +11650,13 @@ static int process_dahdi(struct dahdi_chan_conf *confp, const char *cat, struct /*< \todo why check for the pseudo in the per-channel section. * Any actual use for manual setup of the pseudo channel? */ if (!found_pseudo && reload == 0) { - /* Make sure pseudo isn't a member of any groups if - we're automatically making it. */ - - confp->chan.group = 0; - confp->chan.callgroup = 0; - confp->chan.pickupgroup = 0; + /* use the default configuration for a channel, so + that any settings from real configured channels + don't "leak" into the pseudo channel config + */ + struct dahdi_chan_conf conf = dahdi_chan_conf_default(); - tmp = mkintf(CHAN_PSEUDO, confp, NULL, reload); + tmp = mkintf(CHAN_PSEUDO, &conf, NULL, reload); if (tmp) { if (option_verbose > 2)