Module: wine Branch: master Commit: 3ad7198961d25e30f55c9de333e01f8a2c9ceb48 URL: http://source.winehq.org/git/wine.git/?a=commit;h=3ad7198961d25e30f55c9de333...
Author: Maarten Lankhorst m.b.lankhorst@gmail.com Date: Mon Jul 14 14:22:09 2008 -0700
quartz: Explicitly handle wave headers in avi splitter.
---
dlls/quartz/avisplit.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/dlls/quartz/avisplit.c b/dlls/quartz/avisplit.c index 9d00b4d..2bbd8f1 100644 --- a/dlls/quartz/avisplit.c +++ b/dlls/quartz/avisplit.c @@ -724,6 +724,15 @@ static HRESULT AVISplitter_ProcessStreamList(AVISplitterImpl * This, const BYTE if (pvi->bmiHeader.biCompression) amt.subtype.Data1 = pvi->bmiHeader.biCompression; } + else if (IsEqualIID(&amt.formattype, &FORMAT_WaveFormatEx)) + { + amt.cbFormat = pChunk->cb; + if (amt.cbFormat < sizeof(WAVEFORMATEX)) + amt.cbFormat = sizeof(WAVEFORMATEX); + amt.pbFormat = CoTaskMemAlloc(amt.cbFormat); + ZeroMemory(amt.pbFormat, amt.cbFormat); + CopyMemory(amt.pbFormat, (const BYTE *)(pChunk + 1), pChunk->cb); + } else { amt.cbFormat = pChunk->cb;