Module: wine Branch: master Commit: d2a8994d99708f8ee3f32a4d067c0ce1f828a921 URL: https://source.winehq.org/git/wine.git/?a=commit;h=d2a8994d99708f8ee3f32a4d0...
Author: Jacek Caban jacek@codeweavers.com Date: Thu Jan 24 13:38:51 2019 +0100
widl: Default to input param if [out] nor [in] attribut is specified in get_contexthandle_flags.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
tools/widl/typegen.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/tools/widl/typegen.c b/tools/widl/typegen.c index 0fe3a22..7a81277 100644 --- a/tools/widl/typegen.c +++ b/tools/widl/typegen.c @@ -446,6 +446,7 @@ static unsigned char get_contexthandle_flags( const type_t *iface, const attr_li const type_t *type, int is_return ) { unsigned char flags = 0; + int is_out;
if (is_attr(iface->attrs, ATTR_STRICTCONTEXTHANDLE)) flags |= NDR_STRICT_CONTEXT_HANDLE;
@@ -456,12 +457,13 @@ static unsigned char get_contexthandle_flags( const type_t *iface, const attr_li
if (is_return) return flags | HANDLE_PARAM_IS_OUT | HANDLE_PARAM_IS_RETURN;
- if (is_attr(attrs, ATTR_IN)) + is_out = is_attr(attrs, ATTR_OUT); + if (is_attr(attrs, ATTR_IN) || !is_out) { flags |= HANDLE_PARAM_IS_IN; - if (!is_attr(attrs, ATTR_OUT)) flags |= NDR_CONTEXT_HANDLE_CANNOT_BE_NULL; + if (!is_out) flags |= NDR_CONTEXT_HANDLE_CANNOT_BE_NULL; } - if (is_attr(attrs, ATTR_OUT)) flags |= HANDLE_PARAM_IS_OUT; + if (is_out) flags |= HANDLE_PARAM_IS_OUT;
return flags; }