widl: Write out the pre- and postamble for RPC interfaces with no methods.
diff --git a/tools/widl/header.c b/tools/widl/header.c
index 0347ead..ba241f6 100644
--- a/tools/widl/header.c
+++ b/tools/widl/header.c
@@ -917,18 +917,19 @@
unsigned long ver = get_attrv(iface->attrs, ATTR_VERSION);
const char *var = get_attrp(iface->attrs, ATTR_IMPLICIT_HANDLE);
- if (!iface->funcs) return;
-
fprintf(header, "/*****************************************************************************\n");
fprintf(header, " * %s interface (v%d.%d)\n", iface->name, LOWORD(ver), HIWORD(ver));
fprintf(header, " */\n");
fprintf(header,"#ifndef __%s_INTERFACE_DEFINED__\n", iface->name);
fprintf(header,"#define __%s_INTERFACE_DEFINED__\n\n", iface->name);
- write_iface_guid(iface);
- if (var) fprintf(header, "extern handle_t %s;\n", var);
- fprintf(header, "extern RPC_IF_HANDLE %s_v%d_%d_c_ifspec;\n", iface->name, LOWORD(ver), HIWORD(ver));
- fprintf(header, "extern RPC_IF_HANDLE %s_v%d_%d_s_ifspec;\n", iface->name, LOWORD(ver), HIWORD(ver));
- write_function_proto(iface);
+ if (iface->funcs)
+ {
+ write_iface_guid(iface);
+ if (var) fprintf(header, "extern handle_t %s;\n", var);
+ fprintf(header, "extern RPC_IF_HANDLE %s_v%d_%d_c_ifspec;\n", iface->name, LOWORD(ver), HIWORD(ver));
+ fprintf(header, "extern RPC_IF_HANDLE %s_v%d_%d_s_ifspec;\n", iface->name, LOWORD(ver), HIWORD(ver));
+ write_function_proto(iface);
+ }
fprintf(header,"\n#endif /* __%s_INTERFACE_DEFINED__ */\n\n", iface->name);
/* FIXME: server/client code */