Fixed issue 1 reported by Erik Rosen:
The size of non-callback bytes-fields was miscalculated, which caused all following fields in a message to contain garbage. Previous commit contains a testcase for this. This fix changes the generated message description. If your protocol uses bytes-fields, you should regenerate *.pb.c.
This commit is contained in:
@@ -219,9 +219,6 @@ class Field:
|
||||
result += '\n pb_membersize(%s, %s[0]),' % (self.struct_name, self.name)
|
||||
result += ('\n pb_membersize(%s, %s) / pb_membersize(%s, %s[0]),'
|
||||
% (self.struct_name, self.name, self.struct_name, self.name))
|
||||
elif self.htype != 'PB_HTYPE_CALLBACK' and self.ltype == 'PB_LTYPE_BYTES':
|
||||
result += '\n pb_membersize(%s, bytes),' % self.ctype
|
||||
result += ' 0,'
|
||||
else:
|
||||
result += '\n pb_membersize(%s, %s),' % (self.struct_name, self.name)
|
||||
result += ' 0,'
|
||||
|
||||
Reference in New Issue
Block a user