Andrew Talbot wrote:
> Changelog:
> avifil32: Fix some memory leaks.
>
>
> - if (mmioSeek(This->paf->hmmio, This->paf->dwNextFramePos, SEEK_SET) == -1)
> - return AVIERR_FILEWRITE;
> - if (mmioCreateChunk(This->paf->hmmio, &ck, 0) != S_OK)
> - return AVIERR_FILEWRITE;
> - if (mmioWrite(This->paf->hmmio, (HPSTR)lppc, ck.cksize) != ck.cksize)
> - return AVIERR_FILEWRITE;
> - if (mmioAscend(This->paf->hmmio, &ck, 0) != S_OK)
> + if (mmioSeek(This->paf->hmmio, This->paf->dwNextFramePos, SEEK_SET) == -1 ||
> + mmioCreateChunk(This->paf->hmmio, &ck, 0) != S_OK ||
> + mmioWrite(This->paf->hmmio, (HPSTR)lppc, ck.cksize) != ck.cksize ||
> + mmioAscend(This->paf->hmmio, &ck, 0) != S_OK)
> + {
Doesn't this mean that every one of those 4 mmio-calls are executed? In the
previous logic we would bail out after one failure.
--
Cheers,
Paul.