Rémi Bernon : dmusic: Reset riff chunk type to 0 when it is invalid.
Module: wine Branch: master Commit: 7684880546bf0b7a31aae917b7914ce493b47551 URL: https://gitlab.winehq.org/wine/wine/-/commit/7684880546bf0b7a31aae917b7914ce... Author: Rémi Bernon <rbernon(a)codeweavers.com> Date: Thu Aug 31 10:04:57 2023 +0200 dmusic: Reset riff chunk type to 0 when it is invalid. --- dlls/dmusic/dmobject.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/dlls/dmusic/dmobject.c b/dlls/dmusic/dmobject.c index 07d887a376c..a08db8cba58 100644 --- a/dlls/dmusic/dmobject.c +++ b/dlls/dmusic/dmobject.c @@ -338,11 +338,10 @@ HRESULT stream_get_chunk(IStream *stream, struct chunk_entry *chunk) } } - if (chunk->id == FOURCC_LIST || chunk->id == FOURCC_RIFF) { - hr = stream_read(stream, &chunk->type, sizeof(FOURCC)); - if (hr != S_OK) - return hr != S_FALSE ? hr : E_FAIL; - } + if (chunk->id != FOURCC_LIST && chunk->id != FOURCC_RIFF) + chunk->type = 0; + else if ((hr = stream_read(stream, &chunk->type, sizeof(FOURCC))) != S_OK) + return hr != S_FALSE ? hr : E_FAIL; TRACE_(dmfile)("Returning %s\n", debugstr_chunk(chunk));
participants (1)
-
Alexandre Julliard