--- chan_sip.c_orig 2010-12-24 23:45:46.000000000 +0100 +++ chan_sip.c 2010-12-24 23:46:02.000000000 +0100 @@ -15895,6 +15895,9 @@ return 0; } + /* Check RTP timeouts and kill calls if we have a timeout set and do not get RTP */ + check_rtp_timeout(dialog, *t); + /* We absolutely cannot destroy the rtp struct while a bridge is active or we WILL crash */ if (dialog->rtp && ast_rtp_instance_get_bridged(dialog->rtp)) { ast_debug(2, "Bridge still active. Delaying destroy of SIP dialog '%s' Method: %s\n", dialog->callid, sip_methods[dialog->method].text); @@ -15908,9 +15911,6 @@ return 0; } - /* Check RTP timeouts and kill calls if we have a timeout set and do not get RTP */ - check_rtp_timeout(dialog, *t); - /* If we have sessions that needs to be destroyed, do it now */ /* Check if we have outstanding requests not responsed to or an active call - if that's the case, wait with destruction */