Index: channel.c =================================================================== --- channel.c (revision 8176) +++ channel.c (working copy) @@ -3234,11 +3234,14 @@ res = AST_BRIDGE_RETRY; break; } - to = ast_tvdiff_ms(bridge_end, ast_tvnow()); - if (to <= 0) { - res = AST_BRIDGE_RETRY; - break; - } + if (bridge_end.tv_sec) { + to = ast_tvdiff_ms(bridge_end, ast_tvnow()); + if (to <= 0) { + res = AST_BRIDGE_RETRY; + break; + } + } else + to = -1; who = ast_waitfor_n(cs, 2, &to); if (!who) { ast_log(LOG_DEBUG, "Nobody there, continuing...\n");