=?UTF-8?Q?Rico=20Sch=C3=BCller=20?=: d3dx9: Crop the input in ID3DXBaseEffect::SetBool().
Alexandre Julliard
julliard at winehq.org
Wed May 30 13:18:53 CDT 2012
Module: wine
Branch: master
Commit: f658aabfd5a49506d2b916805e3df7556442853e
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f658aabfd5a49506d2b916805e3df7556442853e
Author: Rico Schüller <kgbricola at web.de>
Date: Wed May 30 14:36:18 2012 +0200
d3dx9: Crop the input in ID3DXBaseEffect::SetBool().
---
dlls/d3dx9_36/effect.c | 2 ++
dlls/d3dx9_36/tests/effect.c | 3 ++-
2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c
index def73a0..5ac79d1 100644
--- a/dlls/d3dx9_36/effect.c
+++ b/dlls/d3dx9_36/effect.c
@@ -1725,6 +1725,8 @@ static HRESULT WINAPI ID3DXBaseEffectImpl_SetBool(ID3DXBaseEffect *iface, D3DXHA
if (param && !param->element_count && param->rows == 1 && param->columns == 1)
{
+ /* crop input */
+ b = b ? TRUE : FALSE;
set_number(param->data, param->type, &b, D3DXPT_BOOL);
return D3D_OK;
}
diff --git a/dlls/d3dx9_36/tests/effect.c b/dlls/d3dx9_36/tests/effect.c
index eb52f7e..c4046c7 100644
--- a/dlls/d3dx9_36/tests/effect.c
+++ b/dlls/d3dx9_36/tests/effect.c
@@ -1857,11 +1857,12 @@ static void test_effect_parameter_value(IDirect3DDevice9 *device)
test_effect_parameter_value_GetTestGroup(&res[k], effect, &blob[res_value_offset], parameter, i);
/* SetBool */
- bvalue = 1;
+ bvalue = 5;
memcpy(expected_value, &blob[res_value_offset], res_desc->Bytes);
hr = effect->lpVtbl->SetBool(effect, parameter, bvalue);
if (!res_desc->Elements && res_desc->Rows == 1 && res_desc->Columns == 1)
{
+ bvalue = bvalue ? TRUE : FALSE;
set_number(expected_value, res_desc->Type, &bvalue, D3DXPT_BOOL);
ok(hr == D3D_OK, "%u - %s: SetBool failed, got %#x, expected %#x\n", i, res_full_name, hr, D3D_OK);
}
More information about the wine-cvs
mailing list