Alexandre Julliard : widl: Generate proxy/client/ server files when requested explicitly even if they are empty.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Jan 19 06:29:36 CST 2007


Module: wine
Branch: master
Commit: 0edfacdb6ae0db0bc75bd0adb9bc30b960cd9ff5
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=0edfacdb6ae0db0bc75bd0adb9bc30b960cd9ff5

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Fri Jan 19 12:46:19 2007 +0100

widl: Generate proxy/client/server files when requested explicitly even if they are empty.

---

 tools/widl/client.c |    2 +-
 tools/widl/proxy.c  |    6 ++----
 tools/widl/server.c |    2 +-
 tools/widl/widl.c   |    2 +-
 tools/widl/widl.h   |    1 +
 5 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/tools/widl/client.c b/tools/widl/client.c
index a0b0f25..a6aa4a4 100644
--- a/tools/widl/client.c
+++ b/tools/widl/client.c
@@ -432,7 +432,7 @@ void write_client(ifref_t *ifaces)
 
     if (!do_client)
         return;
-    if (!iface)
+    if (do_everything && !ifaces)
         return;
     END_OF_LIST(iface);
 
diff --git a/tools/widl/proxy.c b/tools/widl/proxy.c
index 3480b7d..329d0b8 100644
--- a/tools/widl/proxy.c
+++ b/tools/widl/proxy.c
@@ -999,12 +999,12 @@ void write_proxies(ifref_t *ifaces)
   int c;
 
   if (!do_proxies) return;
-  if (!lcur) return;
-  END_OF_LIST(lcur);
+  if (do_everything && !ifaces) return;
 
   init_proxy(ifaces);
   if(!proxy) return;
 
+  END_OF_LIST(lcur);
   cur = lcur;
   while (cur) {
     if (is_object(cur->iface->attrs) && !is_local(cur->iface->attrs))
@@ -1012,8 +1012,6 @@ void write_proxies(ifref_t *ifaces)
     cur = PREV_LINK(cur);
   }
 
-  if (!proxy) return;
-
   write_stubdesc();
 
   print_proxy( "#if !defined(__RPC_WIN32__)\n");
diff --git a/tools/widl/server.c b/tools/widl/server.c
index 630e414..d08fa07 100644
--- a/tools/widl/server.c
+++ b/tools/widl/server.c
@@ -572,7 +572,7 @@ void write_server(ifref_t *ifaces)
 
     if (!do_server)
         return;
-    if (!ifaces)
+    if (do_everything && !ifaces)
         return;
     END_OF_LIST(iface);
 
diff --git a/tools/widl/widl.c b/tools/widl/widl.c
index c04d07f..8cb84dc 100644
--- a/tools/widl/widl.c
+++ b/tools/widl/widl.c
@@ -87,7 +87,7 @@ int debuglevel = DEBUGLEVEL_NONE;
 int parser_debug, yy_flex_debug;
 
 int pedantic = 0;
-static int do_everything = 1;
+int do_everything = 1;
 int preprocess_only = 0;
 int do_header = 0;
 int do_typelib = 0;
diff --git a/tools/widl/widl.h b/tools/widl/widl.h
index e84a5ad..d95ee09 100644
--- a/tools/widl/widl.h
+++ b/tools/widl/widl.h
@@ -36,6 +36,7 @@ extern int debuglevel;
 
 extern int win32;
 extern int pedantic;
+extern int do_everything;
 extern int do_header;
 extern int do_typelib;
 extern int do_proxies;




More information about the wine-cvs mailing list