Robert Shearman : widl:
Only output code for non-object interfaces in client and server.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Mar 31 13:04:48 CST 2006
Module: wine
Branch: refs/heads/master
Commit: 3db71d9d9ca808e37c26e394dccc3df794cece5a
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=3db71d9d9ca808e37c26e394dccc3df794cece5a
Author: Robert Shearman <rob at codeweavers.com>
Date: Fri Mar 31 12:44:04 2006 +0100
widl: Only output code for non-object interfaces in client and server.
Only output code for non-object interfaces in client and server
generation and convert the while loops into for loops.
---
tools/widl/client.c | 7 ++++---
tools/widl/server.c | 9 +++++----
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/tools/widl/client.c b/tools/widl/client.c
index c2af6b9..528ffbf 100644
--- a/tools/widl/client.c
+++ b/tools/widl/client.c
@@ -491,8 +491,11 @@ void write_client(ifref_t *ifaces)
if (!client)
return;
- while (iface)
+ for (; iface; iface = PREV_LINK(iface))
{
+ if (is_object(iface->iface->attrs) || is_local(iface->iface->attrs))
+ continue;
+
fprintf(client, "/*****************************************************************************\n");
fprintf(client, " * %s interface\n", iface->iface->name);
fprintf(client, " */\n");
@@ -526,8 +529,6 @@ void write_client(ifref_t *ifaces)
write_expr_eval_routine_list(client, iface->iface->name);
write_stubdescriptor(iface->iface, expr_eval_routines);
}
-
- iface = PREV_LINK(iface);
}
fclose(client);
diff --git a/tools/widl/server.c b/tools/widl/server.c
index a7f3a74..3abd35e 100644
--- a/tools/widl/server.c
+++ b/tools/widl/server.c
@@ -601,7 +601,7 @@ void write_server(ifref_t *ifaces)
if (!do_server)
return;
- if (!iface)
+ if (!ifaces)
return;
END_OF_LIST(iface);
@@ -609,8 +609,11 @@ void write_server(ifref_t *ifaces)
if (!server)
return;
- while (iface)
+ for (; iface; iface = PREV_LINK(iface))
{
+ if (is_object(iface->iface->attrs) || is_local(iface->iface->attrs))
+ continue;
+
fprintf(server, "/*****************************************************************************\n");
fprintf(server, " * %s interface\n", iface->iface->name);
fprintf(server, " */\n");
@@ -643,8 +646,6 @@ void write_server(ifref_t *ifaces)
write_stubdescriptor(iface->iface, expr_eval_routines);
write_dispatchtable(iface->iface);
}
-
- iface = PREV_LINK(iface);
}
fclose(server);
More information about the wine-cvs
mailing list