From: Giovanni Mascellani gmascellani@codeweavers.com
This reverts commit 00211db0d08d60ee9a0e40206bf7cf9b5b88987b, which introduced a lot of test failures and is taking some time to be reworked properly. --- dlls/mmdevapi/client.c | 34 +--------------------------------- dlls/mmdevapi/tests/capture.c | 1 + dlls/mmdevapi/tests/render.c | 1 + 3 files changed, 3 insertions(+), 33 deletions(-)
diff --git a/dlls/mmdevapi/client.c b/dlls/mmdevapi/client.c index 61b9167f3c6..39cbae27b34 100644 --- a/dlls/mmdevapi/client.c +++ b/dlls/mmdevapi/client.c @@ -398,22 +398,6 @@ static HRESULT stream_init(struct audio_client *client, const BOOLEAN force_def_ return E_INVALIDARG; }
- if (mode == AUDCLNT_SHAREMODE_SHARED) { - WAVEFORMATEX *mix_fmt; - HRESULT hr; - - if (FAILED(hr = IAudioClient3_GetMixFormat(&client->IAudioClient3_iface, &mix_fmt))) - return hr; - - if (fmt->nChannels != mix_fmt->nChannels || fmt->nSamplesPerSec != mix_fmt->nSamplesPerSec) - { - CoTaskMemFree(mix_fmt); - return AUDCLNT_E_UNSUPPORTED_FORMAT; - } - - CoTaskMemFree(mix_fmt); - } - sessions_lock();
if (client->stream) { @@ -776,25 +760,9 @@ static HRESULT WINAPI client_IsFormatSupported(IAudioClient3 *iface, AUDCLNT_SHA
TRACE("(%p)->(%x, %p, %p)\n", This, mode, fmt, out);
- if (fmt) { + if (fmt) dump_fmt(fmt);
- if (mode == AUDCLNT_SHAREMODE_SHARED) { - WAVEFORMATEX *mix_fmt; - HRESULT hr; - - if (FAILED(hr = IAudioClient3_GetMixFormat(iface, &mix_fmt))) - return hr; - - if (fmt->nChannels != mix_fmt->nChannels || fmt->nSamplesPerSec != mix_fmt->nSamplesPerSec) { - *out = mix_fmt; - return S_FALSE; - } - - CoTaskMemFree(mix_fmt); - } - } - params.device = This->device_name; params.flow = This->dataflow; params.share = mode; diff --git a/dlls/mmdevapi/tests/capture.c b/dlls/mmdevapi/tests/capture.c index 678fda5baca..17281bf3108 100644 --- a/dlls/mmdevapi/tests/capture.c +++ b/dlls/mmdevapi/tests/capture.c @@ -629,6 +629,7 @@ static void test_formats(AUDCLNT_SHAREMODE mode) { BOOL compatible = fmt.nSamplesPerSec == pwfx->nSamplesPerSec && fmt.nChannels == pwfx->nChannels; HRESULT expected = compatible ? S_OK : S_FALSE; + todo_wine_if(expected == S_FALSE) ok(hr == expected, "Got %lx expected %lx\n", hr, expected); }
diff --git a/dlls/mmdevapi/tests/render.c b/dlls/mmdevapi/tests/render.c index f674935de00..8772d6e3828 100644 --- a/dlls/mmdevapi/tests/render.c +++ b/dlls/mmdevapi/tests/render.c @@ -576,6 +576,7 @@ static void test_formats(AUDCLNT_SHAREMODE mode) { BOOL compatible = fmt.nSamplesPerSec == pwfx->nSamplesPerSec && fmt.nChannels == pwfx->nChannels; HRESULT expected = compatible ? S_OK : S_FALSE; + todo_wine_if(expected == S_FALSE) ok(hr == expected, "Got %lx expected %lx\n", hr, expected); }