diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 6227dd0268338dd5c678df4c04a9063af09af02f..0c407424adf97963f48aa9b30f40b76c143ed619 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -5174,9 +5174,11 @@ static void *ss_thread(void *data) p->subs[SUB_THREEWAY].owner; struct zt_pvt *pbridge = NULL; /* set up the private struct of the bridged one, if any */ - if (nbridge && ast_bridged_channel(nbridge)) pbridge = ast_bridged_channel(nbridge)->pvt->pvt; - if (nbridge && - (!strcmp(nbridge->type,"Zap")) && + if (nbridge && ast_bridged_channel(nbridge)) + pbridge = ast_bridged_channel(nbridge)->pvt->pvt; + if (nbridge && pbridge && + (!strcmp(nbridge->type,"Zap")) && + (!strcmp(ast_bridged_channel(nbridge)->type, "Zap")) && ISTRUNK(pbridge)) { int func = ZT_FLASH; /* Clear out the dial buffer */