[MPlayer-cvslog] CVS: main/libmpdemux demux_real.c,1.94,1.95
Reimar Döffinger CVS
syncmail at mplayerhq.hu
Sat Apr 15 23:09:31 CEST 2006
CVS change done by Reimar Döffinger CVS
Update of /cvsroot/mplayer/main/libmpdemux
In directory mail:/var2/tmp/cvs-serv25400
Modified Files:
demux_real.c
Log Message:
always cast stream IDs to unsigned before comparing to MAX_STREAMS.
just defining them as unsigned might be a better fix though...
Index: demux_real.c
===================================================================
RCS file: /cvsroot/mplayer/main/libmpdemux/demux_real.c,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -r1.94 -r1.95
--- demux_real.c 27 Mar 2006 17:25:41 -0000 1.94
+++ demux_real.c 15 Apr 2006 21:09:29 -0000 1.95
@@ -162,7 +162,7 @@
if ( mp_msg_test(MSGT_DEMUX,MSGL_V) )
return;
- if (stream_id >= MAX_STREAMS)
+ if ((unsigned)stream_id >= MAX_STREAMS)
return;
index = priv->index_table[stream_id];
@@ -1040,7 +1040,7 @@
return 1;
}
-if(stream_id<MAX_STREAMS){
+if((unsigned)stream_id<MAX_STREAMS){
if(demuxer->audio->id==-1 && demuxer->a_streams[stream_id]){
sh_audio_t *sh = demuxer->a_streams[stream_id];
@@ -1635,14 +1635,14 @@
priv->is_multirate = 1;
stream_skip(demuxer->stream, 4); // Length of codec data (repeated)
stream_cnt = stream_read_dword(demuxer->stream); // Get number of audio or video streams
- if (stream_cnt >= MAX_STREAMS) {
+ if ((unsigned)stream_cnt >= MAX_STREAMS) {
mp_msg(MSGT_DEMUX,MSGL_ERR,"Too many streams in %s. Big troubles ahead.\n", mimet);
goto skip_this_chunk;
}
for (i = 0; i < stream_cnt; i++)
stream_list[i] = stream_read_word(demuxer->stream);
for (i = 0; i < stream_cnt; i++)
- if (stream_list[i] >= MAX_STREAMS) {
+ if ((unsigned)stream_list[i] >= MAX_STREAMS) {
mp_msg(MSGT_DEMUX,MSGL_ERR,"Stream id out of range: %d. Ignored.\n", stream_list[i]);
stream_skip(demuxer->stream, 4); // Skip DATA offset for broken stream
} else {
More information about the MPlayer-cvslog
mailing list