[WIDL 2/3] Fix proc offset calculation
Eric Kohl
eric.kohl at t-online.de
Sat Mar 18 07:33:39 CST 2006
ChangeLog:
Eric Kohl <eric.kohl at t-online.de>
A void return type is represented by a FC_END/FC_PAD sequence in the
proc format string. Increment the proc offset by two when a function
returns void.
-------------- next part --------------
Index: tools/widl/client.c
===================================================================
RCS file: /home/wine/wine/tools/widl/client.c,v
retrieving revision 1.24
diff -u -r1.24 client.c
--- tools/widl/client.c 7 Feb 2006 12:09:51 -0000 1.24
+++ tools/widl/client.c 18 Mar 2006 11:23:40 -0000
@@ -252,6 +252,8 @@
}
if (!is_void(def->type, NULL))
proc_offset += get_size_procformatstring_var(def);
+ else
+ proc_offset += 2; /* FC_END and FC_PAD */
indent--;
print_client("}\n");
Index: tools/widl/server.c
===================================================================
RCS file: /home/wine/wine/tools/widl/server.c,v
retrieving revision 1.26
diff -u -r1.26 server.c
--- tools/widl/server.c 7 Feb 2006 12:09:51 -0000 1.26
+++ tools/widl/server.c 18 Mar 2006 11:23:45 -0000
@@ -343,6 +343,8 @@
}
if (!is_void(def->type, NULL))
proc_offset += get_size_procformatstring_var(def);
+ else
+ proc_offset += 2; /* FC_END and FC_PAD */
func = PREV_LINK(func);
}
More information about the wine-patches
mailing list