mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-08-28 19:26:16 +00:00
Support nested structures
svn path=/trunk/; revision=35039
This commit is contained in:
@@ -3299,8 +3299,9 @@ 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 *)(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);
|
||||
|
||||
@@ -46,6 +46,22 @@ 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)
|
||||
|
||||
Reference in New Issue
Block a user