From: Jeff Peeler Date: Thu, 17 Dec 2009 00:52:03 +0000 (+0000) Subject: Fix call forwarding for analog phones. X-Git-Tag: 11.0.0-beta1~3717 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=50b7338d0256f624550959bb5b3e0272be7ebcc1;p=thirdparty%2Fasterisk.git Fix call forwarding for analog phones. (closes issue #16440) Reported by: mmichelson git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@235382 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 707a9b21a4..ac592e9d45 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -8685,7 +8685,9 @@ static struct ast_channel *dahdi_new(struct dahdi_pvt *i, int state, int startpb tmp->amaflags = i->amaflags; i->subs[idx].owner = tmp; ast_copy_string(tmp->context, i->context, sizeof(tmp->context)); - ast_string_field_set(tmp, call_forward, i->call_forward); + if (!analog_lib_handles(i->sig, i->radio, i->oprmode)) { + ast_string_field_set(tmp, call_forward, i->call_forward); + } /* If we've been told "no ADSI" then enforce it */ if (!i->adsi) tmp->adsicpe = AST_ADSI_UNAVAILABLE; diff --git a/channels/sig_analog.c b/channels/sig_analog.c index aa0d441c9f..e31e656bc8 100644 --- a/channels/sig_analog.c +++ b/channels/sig_analog.c @@ -402,6 +402,7 @@ static struct ast_channel * analog_new_ast_channel(struct analog_pvt *p, int sta } c = p->calls->new_ast_channel(p->chan_pvt, state, startpbx, sub, requestor); + ast_string_field_set(c, call_forward, p->call_forward); p->subs[sub].owner = c; if (!p->owner) { p->owner = c;