diff --git a/reactos/tools/widl/typegen.c b/reactos/tools/widl/typegen.c index 952baf82796..41dd22f2cfd 100644 --- a/reactos/tools/widl/typegen.c +++ b/reactos/tools/widl/typegen.c @@ -3299,9 +3299,8 @@ int write_expr_eval_routines(FILE *file, const char *iface) print_file(file, 0, "static void __RPC_USER %s_%sExprEval_%04u(PMIDL_STUB_MESSAGE pStubMsg)\n", iface, name, callback_offset); print_file(file, 0, "{\n"); - print_file (file, 1, "%s%s *%s = (%s%s *)(pStubMsg->StackTop - %u);\n", - is_struct(eval->structure->type) ? "struct " : "", name, var_name, - is_struct(eval->structure->type) ? "struct " : "", name, eval->baseoff); + print_file (file, 1, "%s *%s = (%s *)(pStubMsg->StackTop - %u);\n", + name, var_name, name, eval->baseoff); print_file(file, 1, "pStubMsg->Offset = 0;\n"); /* FIXME */ print_file(file, 1, "pStubMsg->MaxCount = (unsigned long)"); write_struct_expr(file, eval->expr, 1, fields, var_name); diff --git a/reactos/tools/widl/widl_ros.diff b/reactos/tools/widl/widl_ros.diff index 3d88b9768a9..84aff9839cd 100644 --- a/reactos/tools/widl/widl_ros.diff +++ b/reactos/tools/widl/widl_ros.diff @@ -46,22 +46,6 @@ Index: server.c print_server("#include \"%s\"\n", header_name); fprintf(server, "\n"); } -Index: typegen.c -=================================================================== ---- typegen.c (revision 32187) -+++ typegen.c (working copy) -@@ -3299,8 +3299,9 @@ - print_file(file, 0, "static void __RPC_USER %s_%sExprEval_%04u(PMIDL_STUB_MESSAGE pStubMsg)\n", - iface, name, callback_offset); - print_file(file, 0, "{\n"); -- print_file (file, 1, "%s *%s = (%s *)(pStubMsg->StackTop - %u);\n", -- name, var_name, name, eval->baseoff); -+ print_file (file, 1, "%s%s *%s = (%s%s *)(pStubMsg->StackTop - %u);\n", -+ is_struct(eval->structure->type) ? "struct " : "", name, var_name, -+ is_struct(eval->structure->type) ? "struct " : "", name, eval->baseoff); - print_file(file, 1, "pStubMsg->Offset = 0;\n"); /* FIXME */ - print_file(file, 1, "pStubMsg->MaxCount = (unsigned long)"); - write_struct_expr(file, eval->expr, 1, fields, var_name); Index: typelib.c =================================================================== --- typelib.c (revision 32187)