[PATCH 1/5] avifil32: Always add the format change frame to the buffer in AVIFILE_AddFrame().
Henri Verbeet
hverbeet at codeweavers.com
Tue Jan 5 14:28:59 CST 2010
It doesn't make sense to only do this when the buffer is resized.
---
dlls/avifil32/avifile.c | 18 +++++++++---------
1 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/dlls/avifil32/avifile.c b/dlls/avifil32/avifile.c
index c4f191a..57f8294 100644
--- a/dlls/avifil32/avifile.c
+++ b/dlls/avifil32/avifile.c
@@ -1362,6 +1362,8 @@ static HRESULT WINAPI IAVIStream_fnSetInfo(IAVIStream *iface,
static HRESULT AVIFILE_AddFrame(IAVIStreamImpl *This, DWORD ckid, DWORD size, DWORD offset, DWORD flags)
{
+ UINT n;
+
/* pre-conditions */
assert(This != NULL);
@@ -1383,8 +1385,6 @@ static HRESULT AVIFILE_AddFrame(IAVIStreamImpl *This, DWORD ckid, DWORD size, DW
This->sInfo.dwFormatChangeCount++;
if (This->idxFmtChanges == NULL || This->sInfo.dwFormatChangeCount < This->nIdxFmtChanges) {
- UINT n = This->sInfo.dwFormatChangeCount;
-
This->nIdxFmtChanges += 16;
if (This->idxFmtChanges == NULL)
This->idxFmtChanges =
@@ -1395,15 +1395,15 @@ static HRESULT AVIFILE_AddFrame(IAVIStreamImpl *This, DWORD ckid, DWORD size, DW
This->nIdxFmtChanges * sizeof(AVIINDEXENTRY));
if (This->idxFmtChanges == NULL)
return AVIERR_MEMORY;
+ }
- This->idxFmtChanges[n].ckid = This->lLastFrame;
- This->idxFmtChanges[n].dwFlags = 0;
- This->idxFmtChanges[n].dwChunkOffset = offset;
- This->idxFmtChanges[n].dwChunkLength = size;
+ n = This->sInfo.dwFormatChangeCount;
+ This->idxFmtChanges[n].ckid = This->lLastFrame;
+ This->idxFmtChanges[n].dwFlags = 0;
+ This->idxFmtChanges[n].dwChunkOffset = offset;
+ This->idxFmtChanges[n].dwChunkLength = size;
- return AVIERR_OK;
- }
- break;
+ return AVIERR_OK;
case cktypeWAVEbytes:
if (This->paf->fInfo.dwFlags & AVIFILEINFO_TRUSTCKTYPE)
flags |= AVIIF_KEYFRAME;
--
1.6.4.4
More information about the wine-patches
mailing list