diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 663f6e286f..3646f72474 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -2922,15 +2922,12 @@ static int dahdi_call(struct ast_channel *ast, char *rdest, int timeout) pri_set_crv(p->pri->pri, p->call, p->channel, 0); } p->digital = IS_DIGITAL(ast->transfercapability); - /* Add support for exclusive override */ - if (p->priexclusive) + + /* Should the picked channel be used exclusively? */ + if (p->priexclusive || p->pri->nodetype == PRI_NETWORK) { exclusive = 1; - else { - /* otherwise, traditional behavior */ - if (p->pri->nodetype == PRI_NETWORK) - exclusive = 0; - else - exclusive = 1; + } else { + exclusive = 0; } pri_sr_set_channel(sr, p->bearer ? PVT_TO_CHANNEL(p->bearer) : PVT_TO_CHANNEL(p), exclusive, 1);