summaryrefslogtreecommitdiffstats
path: root/libao2
diff options
context:
space:
mode:
Diffstat (limited to 'libao2')
-rw-r--r--libao2/ao_win32.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/libao2/ao_win32.c b/libao2/ao_win32.c
index 0b97417fb7..edafdc59ec 100644
--- a/libao2/ao_win32.c
+++ b/libao2/ao_win32.c
@@ -166,7 +166,7 @@ static int init(int rate,int channels,int format,int flags)
//fill waveformatex
ZeroMemory( &wformat, sizeof(WAVEFORMATEXTENSIBLE));
- wformat.Format.cbSize = (channels>2)?sizeof(WAVEFORMATEXTENSIBLE):0;
+ wformat.Format.cbSize = (channels>2)?sizeof(WAVEFORMATEXTENSIBLE)-sizeof(WAVEFORMATEX):0;
wformat.Format.nChannels = channels;
wformat.Format.nSamplesPerSec = rate;
if(format == AFMT_AC3)
@@ -222,6 +222,10 @@ static int init(int rate,int channels,int format,int flags)
waveBlocks[i].lpData = buffer;
buffer += BUFFER_SIZE;
}
+ buf_write=0;
+ buf_write_pos=0;
+ full_buffers=0;
+ buffered_bytes=0;
return 1;
}