diff options
author | marha <marha@users.sourceforge.net> | 2014-01-26 20:05:50 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2014-01-26 20:10:14 +0100 |
commit | 30af30b78075159fce477ae99cc72540133714d0 (patch) | |
tree | 1028af42bd030d09bf9c9cb6085665300326abc6 /libxcb/src | |
parent | 775780ea274e6602c2d64de33a98ee35979cc330 (diff) | |
download | vcxsrv-30af30b78075159fce477ae99cc72540133714d0.tar.gz vcxsrv-30af30b78075159fce477ae99cc72540133714d0.tar.bz2 vcxsrv-30af30b78075159fce477ae99cc72540133714d0.zip |
xserver randrproto libxtrans fontconfig libxcb xcb-proto mesa git update 26 Jan 2014
xserver commit c1ce807d9f18f215332d7eeb844e8c640f71c53c
libxcb commit e7263931aff3e3450dc938ad465a7577f943549f
libxcb/xcb-proto commit d898fd39ad6c82207eb78666b2daad982dd757b5
randrproto commit a4a6694c059d74247c16527eef4a0ec9f56bbef6
libxtrans commit e1e6121a1638d43d9929589b4723da2b38cb6b44
fontconfig commit e2b406053c2937799da8636c56b72a77998bcab0
mesa commit 07149f0252c52b4ac58b6df4e307fd786b49b490
Diffstat (limited to 'libxcb/src')
-rw-r--r-- | libxcb/src/c_client.py | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/libxcb/src/c_client.py b/libxcb/src/c_client.py index 45de54413..161cbf59d 100644 --- a/libxcb/src/c_client.py +++ b/libxcb/src/c_client.py @@ -981,15 +981,22 @@ def _c_serialize_helper_fields(context, self, # fields with variable size else: - # switch/bitcase: always calculate padding before and after variable sized fields - if need_padding or is_bitcase: + if field.type.is_pad: + # Variable length pad is <pad align= /> + code_lines.append('%s xcb_align_to = %d;' % (space, field.type.align)) count += _c_serialize_helper_insert_padding(context, code_lines, space, + self.var_followed_by_fixed_fields) + continue + else: + # switch/bitcase: always calculate padding before and after variable sized fields + if need_padding or is_bitcase: + count += _c_serialize_helper_insert_padding(context, code_lines, space, self.var_followed_by_fixed_fields) - value, length = _c_serialize_helper_fields_variable_size(context, self, field, - code_lines, temp_vars, - space, prefix) - prev_field_was_variable = True + value, length = _c_serialize_helper_fields_variable_size(context, self, field, + code_lines, temp_vars, + space, prefix) + prev_field_was_variable = True # save (un)serialization C code if '' != value: @@ -1740,10 +1747,11 @@ def _c_accessors(self, name, base): # else: if True: for field in self.fields: - if field.type.is_list and not field.type.fixed_size(): - _c_accessors_list(self, field) - elif field.prev_varsized_field is not None or not field.type.fixed_size(): - _c_accessors_field(self, field) + if not field.type.is_pad: + if field.type.is_list and not field.type.fixed_size(): + _c_accessors_list(self, field) + elif field.prev_varsized_field is not None or not field.type.fixed_size(): + _c_accessors_field(self, field) def c_simple(self, name): ''' |