Mercurial > mplayer.hg
changeset 15930:f59fdc0d0d14
Do some sanity checks before writing stream information
Patch by Sergio Gelato >Sergio dot Gelato at astro dot su dot se<
and some additions by me
author | rtognimp |
---|---|
date | Wed, 06 Jul 2005 19:20:16 +0000 |
parents | 782c636d50c8 |
children | 545e7ec8bce7 |
files | libmpdemux/realrtsp/sdpplin.c |
diffstat | 1 files changed, 6 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/libmpdemux/realrtsp/sdpplin.c Wed Jul 06 18:28:09 2005 +0000 +++ b/libmpdemux/realrtsp/sdpplin.c Wed Jul 06 19:20:16 2005 +0000 @@ -26,10 +26,12 @@ * */ +#include "config.h" #include "rmff.h" #include "rtsp.h" #include "sdpplin.h" #include "xbuffer.h" +#include "mp_msg.h" /* #define LOG @@ -251,7 +253,10 @@ #ifdef LOG printf("got data for stream id %u\n", stream->stream_id); #endif + if (desc->stream && (stream->stream_id >= 0) && (stream->stream_id < desc->stream_count)) desc->stream[stream->stream_id]=stream; + else + mp_msg(MSGT_OPEN, MSGL_ERR, "sdpplin: got 'm=', but 'a=StreamCount' is still unknown. Broken sdp?\n"); continue; } @@ -284,7 +289,7 @@ } if(filter(data,"a=StreamCount:integer;",&buf)) { - desc->stream_count=atoi(buf); + desc->stream_count=(unsigned int)atoi(buf); desc->stream=malloc(sizeof(sdpplin_stream_t*)*desc->stream_count); handled=1; data=nl(data);