summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2006-12-25 16:21:56 +0000
committerDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2006-12-25 16:21:56 +0000
commit1ac605341958564ce84a3c9784a746920c7148a9 (patch)
tree0ede6d2efcd6cb47633c397e038dcf3700a7e9b4 /src
parent3a375f89ea4f1e10b847a2313311531eeb6c3b22 (diff)
downloadxine-lib-1ac605341958564ce84a3c9784a746920c7148a9.tar.gz
xine-lib-1ac605341958564ce84a3c9784a746920c7148a9.tar.bz2
* Fix invalid memory access in Real Media SDP with tailored stream; reported
by Roland Kay. [bug #1602631] CVS patchset: 8442 CVS date: 2006/12/25 16:21:56
Diffstat (limited to 'src')
-rw-r--r--src/input/libreal/sdpplin.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/input/libreal/sdpplin.c b/src/input/libreal/sdpplin.c
index dc83c3ee1..019237243 100644
--- a/src/input/libreal/sdpplin.c
+++ b/src/input/libreal/sdpplin.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: sdpplin.c,v 1.7 2006/12/25 16:12:17 dgp85 Exp $
+ * $Id: sdpplin.c,v 1.8 2006/12/25 16:21:56 dgp85 Exp $
*
* sdp/sdpplin parser.
*
@@ -242,11 +242,17 @@ sdpplin_t *sdpplin_parse(char *data) {
int handled;
int len;
+ desc->stream = NULL;
+
while (data && *data) {
handled=0;
if (filter(data, "m=", &buf)) {
+ if ( ! desc->stream ) {
+ fprintf(stderr, "sdpplin.c: stream identifier found before stream count, skipping.");
+ continue;
+ }
stream=sdpplin_parse_stream(&data);
lprintf("got data for stream id %u\n", stream->stream_id);
desc->stream[stream->stream_id]=stream;