diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 7429cea894..33ea1d0fe6 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -9869,6 +9869,7 @@ static void *ss7_linkset(void *data) ast_debug(1, "Queuing frame PROGRESS on CIC %d\n", p->cic); dahdi_queue_frame(p, &f, linkset); p->progress = 1; + p->dialing = 0; if (p->dsp && p->dsp_features) { ast_dsp_set_features(p->dsp, p->dsp_features); p->dsp_features = 0; @@ -10100,6 +10101,7 @@ static void *ss7_linkset(void *data) ast_mutex_lock(&p->lock); dahdi_queue_frame(p, &f, linkset); p->proceeding = 1; + p->dialing = 0; /* Send alerting if subscriber is free */ if (e->acm.called_party_status_ind == 1) { p->alerting = 1; @@ -10859,7 +10861,7 @@ static void *pri_dchannel(void *vpri) ast_verb(2, "%s D-Channel on span %d up\n", pri_order(which), pri->span); } pri->dchanavail[which] |= DCHAN_UP; - } else { + } else if (pri->sig != SIG_BRI_PTMP) { if (pri->dchanavail[which] & DCHAN_UP) { ast_verb(2, "%s D-Channel on span %d down\n", pri_order(which), pri->span); }