mirror of https://github.com/mpv-player/mpv
Try playing files with wrong wav header length, fixes riff_broken_hrdlen.wav
(bug #238) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20340 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
a21dc05006
commit
08bea9d14d
|
@ -411,13 +411,11 @@ static int demux_audio_open(demuxer_t* demuxer) {
|
||||||
l = stream_read_dword_le(s);
|
l = stream_read_dword_le(s);
|
||||||
if(l < 16) {
|
if(l < 16) {
|
||||||
mp_msg(MSGT_DEMUX,MSGL_ERR,"[demux_audio] Bad wav header length: too short (%d)!!!\n",l);
|
mp_msg(MSGT_DEMUX,MSGL_ERR,"[demux_audio] Bad wav header length: too short (%d)!!!\n",l);
|
||||||
free_sh_audio(demuxer, 0);
|
l = 16;
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
if(l > MAX_WAVHDR_LEN) {
|
if(l > MAX_WAVHDR_LEN) {
|
||||||
mp_msg(MSGT_DEMUX,MSGL_ERR,"[demux_audio] Bad wav header length: too long (%d)!!!\n",l);
|
mp_msg(MSGT_DEMUX,MSGL_ERR,"[demux_audio] Bad wav header length: too long (%d)!!!\n",l);
|
||||||
free_sh_audio(demuxer, 0);
|
l = 16;
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
sh_audio->wf = w = malloc(l > sizeof(WAVEFORMATEX) ? l : sizeof(WAVEFORMATEX));
|
sh_audio->wf = w = malloc(l > sizeof(WAVEFORMATEX) ? l : sizeof(WAVEFORMATEX));
|
||||||
w->wFormatTag = sh_audio->format = stream_read_word_le(s);
|
w->wFormatTag = sh_audio->format = stream_read_word_le(s);
|
||||||
|
|
Loading…
Reference in New Issue