Since adding the AST_CONTROL_SRCUPDATE frame type,

there are places where ast_rtp_new_source may be called
where the tech_pvt of a channel may not yet have an
rtp structure allocated. This caused a crash in chan_skinny,
which was fixed earlier, but now the same crash has been 
reported against chan_h323 as well. It seems that the best 
solution is to modify ast_rtp_new_source to not attempt to 
set the marker bit if the rtp structure passed in is NULL.

This change to ast_rtp_new_source also allows the removal
of what is now a redundant pointer check from chan_skinny.

(closes issue #13247)
Reported by: pj



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@136062 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Michelson
2008-08-06 15:58:40 +00:00
parent b8550b63bc
commit b48adf96dc
2 changed files with 4 additions and 4 deletions

View File

@@ -2000,7 +2000,9 @@ int ast_rtp_settos(struct ast_rtp *rtp, int tos)
void ast_rtp_new_source(struct ast_rtp *rtp)
{
rtp->set_marker_bit = 1;
if (rtp) {
rtp->set_marker_bit = 1;
}
return;
}