mirror of https://github.com/mpv-player/mpv
always cast stream IDs to unsigned before comparing to MAX_STREAMS.
just defining them as unsigned might be a better fix though... git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18107 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
02c0f0258f
commit
97efe20cd1
|
@ -162,7 +162,7 @@ static void dump_index(demuxer_t *demuxer, int stream_id)
|
||||||
if ( mp_msg_test(MSGT_DEMUX,MSGL_V) )
|
if ( mp_msg_test(MSGT_DEMUX,MSGL_V) )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (stream_id >= MAX_STREAMS)
|
if ((unsigned)stream_id >= MAX_STREAMS)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
index = priv->index_table[stream_id];
|
index = priv->index_table[stream_id];
|
||||||
|
@ -1040,7 +1040,7 @@ got_video:
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(stream_id<MAX_STREAMS){
|
if((unsigned)stream_id<MAX_STREAMS){
|
||||||
|
|
||||||
if(demuxer->audio->id==-1 && demuxer->a_streams[stream_id]){
|
if(demuxer->audio->id==-1 && demuxer->a_streams[stream_id]){
|
||||||
sh_audio_t *sh = demuxer->a_streams[stream_id];
|
sh_audio_t *sh = demuxer->a_streams[stream_id];
|
||||||
|
@ -1635,14 +1635,14 @@ static demuxer_t* demux_open_real(demuxer_t* demuxer)
|
||||||
priv->is_multirate = 1;
|
priv->is_multirate = 1;
|
||||||
stream_skip(demuxer->stream, 4); // Length of codec data (repeated)
|
stream_skip(demuxer->stream, 4); // Length of codec data (repeated)
|
||||||
stream_cnt = stream_read_dword(demuxer->stream); // Get number of audio or video streams
|
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);
|
mp_msg(MSGT_DEMUX,MSGL_ERR,"Too many streams in %s. Big troubles ahead.\n", mimet);
|
||||||
goto skip_this_chunk;
|
goto skip_this_chunk;
|
||||||
}
|
}
|
||||||
for (i = 0; i < stream_cnt; i++)
|
for (i = 0; i < stream_cnt; i++)
|
||||||
stream_list[i] = stream_read_word(demuxer->stream);
|
stream_list[i] = stream_read_word(demuxer->stream);
|
||||||
for (i = 0; i < stream_cnt; i++)
|
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]);
|
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
|
stream_skip(demuxer->stream, 4); // Skip DATA offset for broken stream
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue