Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
56e2553e
Commit
56e2553e
authored
Apr 14, 2008
by
Rob Shearman
Committed by
Alexandre Julliard
Apr 14, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
widl: Add support for the broadcast and idempotent operation attributes.
parent
66b8574d
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
13 additions
and
0 deletions
+13
-0
client.c
tools/widl/client.c
+10
-0
parser.y
tools/widl/parser.y
+2
-0
widltypes.h
tools/widl/widltypes.h
+1
-0
No files found.
tools/widl/client.c
View file @
56e2553e
...
@@ -186,6 +186,16 @@ static void write_function_stubs(type_t *iface, unsigned int *proc_offset)
...
@@ -186,6 +186,16 @@ static void write_function_stubs(type_t *iface, unsigned int *proc_offset)
indent
--
;
indent
--
;
fprintf
(
client
,
"
\n
"
);
fprintf
(
client
,
"
\n
"
);
if
(
is_attr
(
def
->
attrs
,
ATTR_IDEMPOTENT
)
||
is_attr
(
def
->
attrs
,
ATTR_BROADCAST
))
{
print_client
(
"_RpcMessage.RpcFlags = ( RPC_NCA_FLAGS_DEFAULT "
);
if
(
is_attr
(
def
->
attrs
,
ATTR_IDEMPOTENT
))
fprintf
(
client
,
"| RPC_NCA_FLAGS_IDEMPOTENT "
);
if
(
is_attr
(
def
->
attrs
,
ATTR_BROADCAST
))
fprintf
(
client
,
"| RPC_NCA_FLAGS_BROADCAST "
);
fprintf
(
client
,
");
\n\n
"
);
}
if
(
implicit_handle
)
if
(
implicit_handle
)
{
{
print_client
(
"_Handle = %s;
\n
"
,
implicit_handle
);
print_client
(
"_Handle = %s;
\n
"
,
implicit_handle
);
...
...
tools/widl/parser.y
View file @
56e2553e
...
@@ -457,6 +457,7 @@ attribute: { $$ = NULL; }
...
@@ -457,6 +457,7 @@ attribute: { $$ = NULL; }
| tASYNC { $$ = make_attr(ATTR_ASYNC); }
| tASYNC { $$ = make_attr(ATTR_ASYNC); }
| tAUTOHANDLE { $$ = make_attr(ATTR_AUTO_HANDLE); }
| tAUTOHANDLE { $$ = make_attr(ATTR_AUTO_HANDLE); }
| tBINDABLE { $$ = make_attr(ATTR_BINDABLE); }
| tBINDABLE { $$ = make_attr(ATTR_BINDABLE); }
| tBROADCAST { $$ = make_attr(ATTR_BROADCAST); }
| tCALLAS '(' ident ')' { $$ = make_attrp(ATTR_CALLAS, $3); }
| tCALLAS '(' ident ')' { $$ = make_attrp(ATTR_CALLAS, $3); }
| tCASE '(' expr_list_const ')' { $$ = make_attrp(ATTR_CASE, $3); }
| tCASE '(' expr_list_const ')' { $$ = make_attrp(ATTR_CASE, $3); }
| tCONTEXTHANDLE { $$ = make_attrv(ATTR_CONTEXTHANDLE, 0); }
| tCONTEXTHANDLE { $$ = make_attrv(ATTR_CONTEXTHANDLE, 0); }
...
@@ -2154,6 +2155,7 @@ struct allowed_attr allowed_attr[] =
...
@@ -2154,6 +2155,7 @@ struct allowed_attr allowed_attr[] =
/* ATTR_ASYNC */ { 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, "async" },
/* ATTR_ASYNC */ { 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, "async" },
/* ATTR_AUTO_HANDLE */ { 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, "auto_handle" },
/* ATTR_AUTO_HANDLE */ { 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, "auto_handle" },
/* ATTR_BINDABLE */ { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "bindable" },
/* ATTR_BINDABLE */ { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "bindable" },
/* ATTR_BROADCAST */ { 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "broadcast" },
/* ATTR_CALLAS */ { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "call_as" },
/* ATTR_CALLAS */ { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "call_as" },
/* ATTR_CALLCONV */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL },
/* ATTR_CALLCONV */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL },
/* ATTR_CASE */ { 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, "case" },
/* ATTR_CASE */ { 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, "case" },
...
...
tools/widl/widltypes.h
View file @
56e2553e
...
@@ -69,6 +69,7 @@ enum attr_type
...
@@ -69,6 +69,7 @@ enum attr_type
ATTR_ASYNC
,
ATTR_ASYNC
,
ATTR_AUTO_HANDLE
,
ATTR_AUTO_HANDLE
,
ATTR_BINDABLE
,
ATTR_BINDABLE
,
ATTR_BROADCAST
,
ATTR_CALLAS
,
ATTR_CALLAS
,
ATTR_CALLCONV
,
/* calling convention pseudo-attribute */
ATTR_CALLCONV
,
/* calling convention pseudo-attribute */
ATTR_CASE
,
ATTR_CASE
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment