Module: wine Branch: master Commit: 2d29ec34bab4a7f38d00a2142b70156febccd116 URL: https://source.winehq.org/git/wine.git/?a=commit;h=2d29ec34bab4a7f38d00a2142...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Sun Jun 26 14:44:18 2022 +0300
d2d1/effect: Handle initial values for D2D1_PROPERTY_TYPE_BOOL.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com
---
dlls/d2d1/factory.c | 7 +++++++ dlls/d2d1/tests/d2d1.c | 4 ++++ 2 files changed, 11 insertions(+)
diff --git a/dlls/d2d1/factory.c b/dlls/d2d1/factory.c index 52e09033e6d..e2bc80e2f07 100644 --- a/dlls/d2d1/factory.c +++ b/dlls/d2d1/factory.c @@ -829,6 +829,7 @@ static HRESULT parse_effect_add_property(struct d2d_effect_properties *props, co { void *src = NULL; UINT32 _uint32; + BOOL _bool;
p->data.offset = props->offset; p->size = sizes[type]; @@ -842,6 +843,12 @@ static HRESULT parse_effect_add_property(struct d2d_effect_properties *props, co _uint32 = wcstoul(value, NULL, 10); src = &_uint32; break; + case D2D1_PROPERTY_TYPE_BOOL: + if (!wcscmp(value, L"true")) _bool = TRUE; + else if (!wcscmp(value, L"false")) _bool = FALSE; + else return E_INVALIDARG; + src = &_bool; + break; case D2D1_PROPERTY_TYPE_IUNKNOWN: case D2D1_PROPERTY_TYPE_COLOR_CONTEXT: break; diff --git a/dlls/d2d1/tests/d2d1.c b/dlls/d2d1/tests/d2d1.c index f1cec1d7a0b..b893e9e8564 100644 --- a/dlls/d2d1/tests/d2d1.c +++ b/dlls/d2d1/tests/d2d1.c @@ -50,6 +50,10 @@ L"<?xml version='1.0'?> \ <Property name='Max' type='uint32' value='100'/> \ <Property name='Default' type='uint32' value='10'/> \ </Property> \ + <Property name='Bool' type='bool'> \ + <Property name='DisplayName' type='string' value='Bool property'/> \ + <Property name='Default' type='bool' value='false'/> \ + </Property> \ </Effect> \ ";