diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 640df5599f..419100212e 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -5906,12 +5906,13 @@ static struct ast_channel *dahdi_new(struct dahdi_pvt *i, int state, int startpb else i->dsp = NULL; if (i->dsp) { - i->dsp_features = features & ~DSP_PROGRESS_TALK; + i->dsp_features = features; #if defined(HAVE_PRI) || defined(HAVE_SS7) /* We cannot do progress detection until receives PROGRESS message */ if (i->outgoing && ((i->sig == SIG_PRI) || (i->sig == SIG_BRI) || (i->sig == SIG_BRI_PTMP) || (i->sig == SIG_SS7))) { /* Remember requested DSP features, don't treat talking as ANSWER */ + i->dsp_features = features & ~DSP_PROGRESS_TALK; features = 0; } #endif