https://git.reactos.org/?p=reactos.git;a=commitdiff;h=32eba1089227733c73a0d…
commit 32eba1089227733c73a0d7cf9858b1b84408c937
Author: Amine Khaldi <amine.khaldi(a)reactos.org>
AuthorDate: Sat Mar 17 13:23:50 2018 +0100
Commit: Amine Khaldi <amine.khaldi(a)reactos.org>
CommitDate: Sat Mar 17 13:23:50 2018 +0100
[MMDEVAPI_WINETEST] Sync with Wine Staging 3.3. CORE-14434
---
modules/rostests/winetests/mmdevapi/capture.c | 17 +++++++----------
modules/rostests/winetests/mmdevapi/mmdevenum.c | 3 +++
modules/rostests/winetests/mmdevapi/render.c | 13 ++++++++++---
3 files changed, 20 insertions(+), 13 deletions(-)
diff --git a/modules/rostests/winetests/mmdevapi/capture.c
b/modules/rostests/winetests/mmdevapi/capture.c
index 3cdfda1a37..0fa9f0cab8 100644
--- a/modules/rostests/winetests/mmdevapi/capture.c
+++ b/modules/rostests/winetests/mmdevapi/capture.c
@@ -308,20 +308,17 @@ static void test_capture(IAudioClient *ac, HANDLE handle,
WAVEFORMATEX *wfx)
hr==S_OK ? (UINT)pos : -1, pad, flags, frames);
if(hr == S_OK){
- /* The discontinuity is reported here, but is this an old or new packet? */
- todo_wine_if(!(flags & AUDCLNT_BUFFERFLAGS_DATA_DISCONTINUITY)) {
- /* FIXME: Some drivers fail */
- ok(flags & AUDCLNT_BUFFERFLAGS_DATA_DISCONTINUITY, "expect
DISCONTINUITY %x\n", flags);
+ if(flags & AUDCLNT_BUFFERFLAGS_DATA_DISCONTINUITY){
/* Native's position is one period further than what we read.
* Perhaps that's precisely the meaning of DATA_DISCONTINUITY:
* signal when the position jump left a gap. */
- ok(pos == sum + frames, "Position %u gap %d\n", (UINT)pos,
(UINT)pos - sum);
+ ok(pos == sum + frames, "Position %u last %u frames %u\n",
(UINT)pos, sum, frames);
+ sum = pos;
+ }else{ /* win10 */
+ ok(pos == sum, "Position %u last %u frames %u\n", (UINT)pos, sum,
frames);
}
ok(pad == next, "GCP %u vs. BufferSize %u\n", (UINT32)pad, next);
-
- if(flags & AUDCLNT_BUFFERFLAGS_DATA_DISCONTINUITY)
- sum = pos;
}
hr = IAudioCaptureClient_ReleaseBuffer(acc, frames);
@@ -416,9 +413,9 @@ static void test_capture(IAudioClient *ac, HANDLE handle, WAVEFORMATEX
*wfx)
hr = IAudioCaptureClient_GetBuffer(acc, &data, &frames, &flags, &pos,
&qpc);
ok(hr == S_OK, "Valid IAudioCaptureClient_GetBuffer returns %08x\n", hr);
trace("Running position %d pad %u flags %x, amount of frames locked:
%u\n",
- hr==S_OK ? (UINT)pos : -1, pad, flags, frames);
+ SUCCEEDED(hr) ? (UINT)pos : -1, pad, flags, frames);
- if(hr == S_OK){
+ if(SUCCEEDED(hr)){
/* Some w7 machines signal DATA_DISCONTINUITY here following the
* previous AUDCLNT_S_BUFFER_EMPTY, others not. What logic? */
ok(pos >= sum, "Position %u gap %d\n", (UINT)pos, (UINT)pos - sum);
diff --git a/modules/rostests/winetests/mmdevapi/mmdevenum.c
b/modules/rostests/winetests/mmdevapi/mmdevenum.c
index 12e2156125..23f5b82b1d 100644
--- a/modules/rostests/winetests/mmdevapi/mmdevenum.c
+++ b/modules/rostests/winetests/mmdevapi/mmdevenum.c
@@ -21,6 +21,9 @@
#define COBJMACROS
#include "initguid.h"
+#ifndef __REACTOS__
+#include "endpointvolume.h"
+#endif
#include "mmdeviceapi.h"
#include "audioclient.h"
#include "audiopolicy.h"
diff --git a/modules/rostests/winetests/mmdevapi/render.c
b/modules/rostests/winetests/mmdevapi/render.c
index 8487fbbb92..b1c62f0ccf 100644
--- a/modules/rostests/winetests/mmdevapi/render.c
+++ b/modules/rostests/winetests/mmdevapi/render.c
@@ -29,13 +29,19 @@
#define COBJMACROS
+#ifdef STANDALONE
+#include "initguid.h"
+#endif
+
#include "unknwn.h"
#include "uuids.h"
#include "mmdeviceapi.h"
#include "mmsystem.h"
#include "audioclient.h"
#include "audiopolicy.h"
-#include "initguid.h"
+#ifdef __REACTOS__
+#include <initguid.h>
+#endif
#include "endpointvolume.h"
static const unsigned int win_formats[][4] = {
@@ -945,8 +951,9 @@ static void test_clock(int share)
ok(gbsize == bufsize,
"BufferSize %u at rate %u\n", gbsize, pwfx->nSamplesPerSec);
else
- ok(gbsize == parts * fragment || gbsize == MulDiv(bufsize, 1, 1024) * 1024,
- "BufferSize %u misfits fragment size %u at rate %u\n", gbsize, fragment,
pwfx->nSamplesPerSec);
+ todo_wine
+ ok(gbsize == parts * fragment || gbsize == MulDiv(bufsize, 1, 1024) * 1024,
+ "BufferSize %u misfits fragment size %u at rate %u\n", gbsize,
fragment, pwfx->nSamplesPerSec);
/* In shared mode, GetCurrentPadding decreases in multiples of
* fragment size (i.e. updated only at period ticks), whereas