mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-15 18:57:16 +00:00
dinput/tests: Remove racy IForceFeedbackEffect reference count checks.
Because the async operation holds a reference on the invoker and the param, it may keep the effect alive until the worker thread releases its reference on the async operation. We have no way to synchronize on that. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53199 Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
This commit is contained in:
parent
2020541b4b
commit
1854001c79
|
@ -5673,7 +5673,6 @@ static void test_windows_gaming_input(void)
|
||||||
UINT32 size;
|
UINT32 size;
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
DWORD ret;
|
DWORD ret;
|
||||||
LONG ref;
|
|
||||||
|
|
||||||
if (!load_combase_functions()) return;
|
if (!load_combase_functions()) return;
|
||||||
|
|
||||||
|
@ -6053,8 +6052,7 @@ static void test_windows_gaming_input(void)
|
||||||
todo_wine
|
todo_wine
|
||||||
ok( hr == 0x86854003, "TryUnloadEffectAsync returned %#lx\n", hr );
|
ok( hr == 0x86854003, "TryUnloadEffectAsync returned %#lx\n", hr );
|
||||||
|
|
||||||
ref = IForceFeedbackEffect_Release( effect );
|
IForceFeedbackEffect_Release( effect );
|
||||||
ok( ref == 0, "Release returned %lu\n", ref );
|
|
||||||
|
|
||||||
|
|
||||||
hr = IPeriodicForceEffectFactory_CreateInstance( periodic_factory, PeriodicForceEffectKind_SineWave, &effect );
|
hr = IPeriodicForceEffectFactory_CreateInstance( periodic_factory, PeriodicForceEffectKind_SineWave, &effect );
|
||||||
|
@ -6127,8 +6125,7 @@ static void test_windows_gaming_input(void)
|
||||||
IAsyncOperation_boolean_Release( bool_async );
|
IAsyncOperation_boolean_Release( bool_async );
|
||||||
set_hid_expect( file, NULL, 0 );
|
set_hid_expect( file, NULL, 0 );
|
||||||
|
|
||||||
ref = IForceFeedbackEffect_Release( effect );
|
IForceFeedbackEffect_Release( effect );
|
||||||
ok( ref == 0, "Release returned %lu\n", ref );
|
|
||||||
|
|
||||||
IPeriodicForceEffectFactory_Release( periodic_factory );
|
IPeriodicForceEffectFactory_Release( periodic_factory );
|
||||||
|
|
||||||
|
@ -6220,8 +6217,7 @@ static void test_windows_gaming_input(void)
|
||||||
IAsyncOperation_boolean_Release( bool_async );
|
IAsyncOperation_boolean_Release( bool_async );
|
||||||
set_hid_expect( file, NULL, 0 );
|
set_hid_expect( file, NULL, 0 );
|
||||||
|
|
||||||
ref = IForceFeedbackEffect_Release( effect );
|
IForceFeedbackEffect_Release( effect );
|
||||||
ok( ref == 0, "Release returned %lu\n", ref );
|
|
||||||
|
|
||||||
IConditionForceEffectFactory_Release( condition_factory );
|
IConditionForceEffectFactory_Release( condition_factory );
|
||||||
|
|
||||||
|
@ -6313,8 +6309,7 @@ static void test_windows_gaming_input(void)
|
||||||
IAsyncOperation_boolean_Release( bool_async );
|
IAsyncOperation_boolean_Release( bool_async );
|
||||||
set_hid_expect( file, NULL, 0 );
|
set_hid_expect( file, NULL, 0 );
|
||||||
|
|
||||||
ref = IForceFeedbackEffect_Release( effect );
|
IForceFeedbackEffect_Release( effect );
|
||||||
ok( ref == 0, "Release returned %lu\n", ref );
|
|
||||||
|
|
||||||
|
|
||||||
hr = pWindowsCreateString( ramp_effect_class_name, wcslen( ramp_effect_class_name ), &str );
|
hr = pWindowsCreateString( ramp_effect_class_name, wcslen( ramp_effect_class_name ), &str );
|
||||||
|
@ -6387,8 +6382,7 @@ static void test_windows_gaming_input(void)
|
||||||
IAsyncOperation_boolean_Release( bool_async );
|
IAsyncOperation_boolean_Release( bool_async );
|
||||||
set_hid_expect( file, NULL, 0 );
|
set_hid_expect( file, NULL, 0 );
|
||||||
|
|
||||||
ref = IForceFeedbackEffect_Release( effect );
|
IForceFeedbackEffect_Release( effect );
|
||||||
ok( ref == 0, "Release returned %lu\n", ref );
|
|
||||||
|
|
||||||
|
|
||||||
IForceFeedbackMotor_Release( motor );
|
IForceFeedbackMotor_Release( motor );
|
||||||
|
|
Loading…
Reference in a new issue