mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 01:15:09 +00:00
WIDL: Enable the use of scalar types (non-pointer types) as custom binding handles.
svn path=/trunk/; revision=36982
This commit is contained in:
parent
13dcae5f0c
commit
1e39b5fb16
1 changed files with 12 additions and 4 deletions
|
@ -597,10 +597,18 @@ const var_t* get_explicit_handle_var(const func_t* func)
|
||||||
|
|
||||||
const type_t* get_explicit_generic_handle_type(const var_t* var)
|
const type_t* get_explicit_generic_handle_type(const var_t* var)
|
||||||
{
|
{
|
||||||
const type_t *t;
|
const type_t *t = var->type;
|
||||||
for (t = var->type; is_ptr(t); t = t->ref)
|
|
||||||
if (t->type != RPC_FC_BIND_PRIMITIVE && is_attr(t->attrs, ATTR_HANDLE))
|
if (t->type == RPC_FC_BIND_PRIMITIVE)
|
||||||
return t;
|
return NULL;
|
||||||
|
|
||||||
|
if (!is_ptr(t) && is_attr(t->attrs, ATTR_HANDLE))
|
||||||
|
return t;
|
||||||
|
else
|
||||||
|
for (; is_ptr(t); t = t->ref)
|
||||||
|
if (t->type != RPC_FC_BIND_PRIMITIVE && is_attr(t->attrs, ATTR_HANDLE))
|
||||||
|
return t;
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue