summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_audio.c
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-10-21 19:58:49 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-10-21 19:58:49 +0000
commit08bea9d14d61ceb97f2c305d950febecfb0483ca (patch)
tree757baa3311ebf6de3b8deb6c90b0b438a6582a26 /libmpdemux/demux_audio.c
parenta21dc05006b721140fefdc70acdd74d8fd0c85f5 (diff)
downloadmpv-08bea9d14d61ceb97f2c305d950febecfb0483ca.tar.bz2
mpv-08bea9d14d61ceb97f2c305d950febecfb0483ca.tar.xz
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
Diffstat (limited to 'libmpdemux/demux_audio.c')
-rw-r--r--libmpdemux/demux_audio.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/libmpdemux/demux_audio.c b/libmpdemux/demux_audio.c
index 712d193ffa..0c47df9e16 100644
--- a/libmpdemux/demux_audio.c
+++ b/libmpdemux/demux_audio.c
@@ -411,13 +411,11 @@ static int demux_audio_open(demuxer_t* demuxer) {
l = stream_read_dword_le(s);
if(l < 16) {
mp_msg(MSGT_DEMUX,MSGL_ERR,"[demux_audio] Bad wav header length: too short (%d)!!!\n",l);
- free_sh_audio(demuxer, 0);
- return 0;
+ l = 16;
}
if(l > MAX_WAVHDR_LEN) {
mp_msg(MSGT_DEMUX,MSGL_ERR,"[demux_audio] Bad wav header length: too long (%d)!!!\n",l);
- free_sh_audio(demuxer, 0);
- return 0;
+ l = 16;
}
sh_audio->wf = w = malloc(l > sizeof(WAVEFORMATEX) ? l : sizeof(WAVEFORMATEX));
w->wFormatTag = sh_audio->format = stream_read_word_le(s);