[PATCH 1/3] msacm32: Handle invalid use of reserved parameter in acmStreamPrepareHeader
Andrew Eikum
aeikum at codeweavers.com
Mon Aug 29 08:38:46 CDT 2016
Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
On Sun, Aug 28, 2016 at 04:07:28AM -0300, Bruno Jesus wrote:
> More work towards bug git https://bugs.winehq.org/show_bug.cgi?id=24723
>
> Signed-off-by: Bruno Jesus <00cpxxx at gmail.com>
> ---
> dlls/msacm32/stream.c | 10 ++++++----
> dlls/msacm32/tests/msacm.c | 1 -
> 2 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/dlls/msacm32/stream.c b/dlls/msacm32/stream.c
> index bdfc3cc..b380b46 100644
> --- a/dlls/msacm32/stream.c
> +++ b/dlls/msacm32/stream.c
> @@ -302,14 +302,16 @@ MMRESULT WINAPI acmStreamPrepareHeader(HACMSTREAM has, PACMSTREAMHEADER pash,
>
> if ((was = ACM_GetStream(has)) == NULL) {
> WARN("invalid handle\n");
> - return MMSYSERR_INVALHANDLE;
> + return MMSYSERR_INVALHANDLE;
> }
> if (!pash || pash->cbStruct < sizeof(ACMSTREAMHEADER)) {
> WARN("invalid parameter\n");
> - return MMSYSERR_INVALPARAM;
> + return MMSYSERR_INVALPARAM;
> + }
> + if (fdwPrepare) {
> + WARN("invalid use of reserved parameter\n");
> + return MMSYSERR_INVALFLAG;
> }
> - if (fdwPrepare)
> - ret = MMSYSERR_INVALFLAG;
>
> /* Note: the ACMSTREAMHEADER and ACMDRVSTREAMHEADER structs are of same
> * size. some fields are private to msacm internals, and are exposed
> diff --git a/dlls/msacm32/tests/msacm.c b/dlls/msacm32/tests/msacm.c
> index 812a1bb..06e530b 100644
> --- a/dlls/msacm32/tests/msacm.c
> +++ b/dlls/msacm32/tests/msacm.c
> @@ -601,7 +601,6 @@ todo_wine
>
> hdr.cbSrcLength = src->wfx.nBlockAlign;
> mr = acmStreamPrepareHeader(has, &hdr, 1); /* invalid use of reserved parameter */
> -todo_wine
> ok(mr == MMSYSERR_INVALFLAG, "expected 0x0a, got 0x%x\n", mr);
>
> mr = acmStreamPrepareHeader(has, &hdr, 0);
> --
> 2.9.3
>
>
>
More information about the wine-patches
mailing list