diff options
author | Marc-André Lureau <marcandre.lureau@gmail.com> | 2012-03-21 01:43:29 +0100 |
---|---|---|
committer | Marc-André Lureau <marcandre.lureau@gmail.com> | 2012-03-21 13:24:16 +0100 |
commit | ecce70452f5e28e111fb7acd6eac5c169ba67cff (patch) | |
tree | a5ceb507d5abca880b2191afe3479c1bc744a06c | |
parent | 94a46ebc2a3d83802c8ab297b4c2f4441def0ee2 (diff) | |
download | spice-protocol-ecce70452f5e28e111fb7acd6eac5c169ba67cff.tar.gz spice-protocol-ecce70452f5e28e111fb7acd6eac5c169ba67cff.tar.xz spice-protocol-ecce70452f5e28e111fb7acd6eac5c169ba67cff.zip |
codegen: struct marshallers are not current function helper
This solves the issue of struct_marshallers being included within the
current ifdef/endif body, although they are independant functions.
-rw-r--r-- | python_modules/marshal.py | 5 | ||||
-rwxr-xr-x | spice_codegen.py | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/python_modules/marshal.py b/python_modules/marshal.py index d93f983..dc10a4c 100644 --- a/python_modules/marshal.py +++ b/python_modules/marshal.py @@ -99,7 +99,7 @@ class SubMarshallingSource(MarshallingSource): else: return self.parent_src.get_ref(self.name) + "." + member -def write_marshal_ptr_function(writer, target_type): +def write_marshal_ptr_function(writer, target_type, is_helper=True): if target_type.is_array(): marshal_function = "spice_marshall_array_%s" % target_type.element_type.primitive_type() else: @@ -116,7 +116,8 @@ def write_marshal_ptr_function(writer, target_type): names_args = "".join(n) header = writer.header - writer = writer.function_helper() + if is_helper: + writer = writer.function_helper() writer.header = header writer.out_prefix = "" if target_type.is_array(): diff --git a/spice_codegen.py b/spice_codegen.py index a9fdee9..759b09d 100755 --- a/spice_codegen.py +++ b/spice_codegen.py @@ -188,7 +188,7 @@ if options.generate_marshallers: if options.struct_marshallers: for structname in options.struct_marshallers: t = ptypes.lookup_type(structname) - marshal.write_marshal_ptr_function(writer, t) + marshal.write_marshal_ptr_function(writer, t, False) if options.generate_marshallers or (options.struct_marshallers and len(options.struct_marshallers) > 0): marshal.write_trailer(writer) |