diff --git a/tools/widl/client.c b/tools/widl/client.c index 1dbbbc693a2..3197b732e04 100644 --- a/tools/widl/client.c +++ b/tools/widl/client.c @@ -252,6 +252,8 @@ static void write_function_stubs(type_t *iface) } 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"); diff --git a/tools/widl/server.c b/tools/widl/server.c index d1ea5f080a6..8cc33daab67 100644 --- a/tools/widl/server.c +++ b/tools/widl/server.c @@ -343,6 +343,8 @@ static void write_function_stubs(type_t *iface) } 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); }