We get quite a bunch of failures (even segfaults) when running the pipeline's tests on GitLab.
This small series fixes the crashes in the filtergraph test (basically, the expected error code wasn't returned). I tested manually in Windows that the EC in the serie match what Windows return.
But that's not the end of the story: in GitLab, only the 32bit tests fail, while on my test env (VM without any audio attach) both 32 and 64 segfaulted at the same spot.
Given the error messages above the segfault in gitlab traces (complaining about not accessing nor mapping alsa' fd), they're likely some other issues to look at.
From: Eric Pouech epouech@codeweavers.com
Signed-off-by: Eric Pouech epouech@codeweavers.com --- dlls/dsound/dsound.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/dsound/dsound.c b/dlls/dsound/dsound.c index 0b8edaaaf06..b35f9c7cbdd 100644 --- a/dlls/dsound/dsound.c +++ b/dlls/dsound/dsound.c @@ -288,9 +288,10 @@ static HRESULT DirectSoundDevice_Initialize(DirectSoundDevice ** ppDevice, LPCGU IsEqualGUID(lpcGUID, &DSDEVID_DefaultVoiceCapture)) return DSERR_NODRIVER;
- if (GetDeviceID(lpcGUID, &devGUID) != DS_OK) { + hr = GetDeviceID(lpcGUID, &devGUID); + if (FAILED(hr)) { WARN("invalid parameter: lpcGUID\n"); - return DSERR_INVALIDPARAM; + return hr; }
hr = get_mmdevice(eRender, &devGUID, &mmdevice);
From: Eric Pouech epouech@codeweavers.com
Signed-off-by: Eric Pouech epouech@codeweavers.com --- dlls/quartz/dsoundrender.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/quartz/dsoundrender.c b/dlls/quartz/dsoundrender.c index 38a7d6f7ad7..10eed43422e 100644 --- a/dlls/quartz/dsoundrender.c +++ b/dlls/quartz/dsoundrender.c @@ -1015,7 +1015,7 @@ HRESULT dsound_render_create(IUnknown *outer, IUnknown **out) IUnknown_Release(object->system_clock); strmbase_filter_cleanup(&object->filter); free(object); - return hr; + return hr == DSERR_NODRIVER ? VFW_E_NO_AUDIO_HARDWARE : hr; }
if (FAILED(hr = IDirectSound8_SetCooperativeLevel(object->dsound,
From: Eric Pouech epouech@codeweavers.com
Signed-off-by: Eric Pouech epouech@codeweavers.com --- dlls/mmdevapi/main.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/dlls/mmdevapi/main.c b/dlls/mmdevapi/main.c index dfc6183aa7d..36c94908d67 100644 --- a/dlls/mmdevapi/main.c +++ b/dlls/mmdevapi/main.c @@ -295,10 +295,7 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv) unsigned int i = 0; TRACE("(%s, %s, %p)\n", debugstr_guid(rclsid), debugstr_guid(riid), ppv);
- if(!InitOnceExecuteOnce(&init_once, init_driver, NULL, NULL)) { - ERR("Driver initialization failed\n"); - return E_FAIL; - } + InitOnceExecuteOnce(&init_once, init_driver, NULL, NULL);
if (ppv == NULL) { WARN("invalid parameter\n");
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=138836
Your paranoid android.
=== debian11b (64 bit WoW report) ===
uiautomationcore: Unhandled exception: page fault on read access to 0x00007fa5ef0901be in 64-bit code (0x006fffffc8b7a0).
This merge request was approved by Zebediah Figura.