From b199e98fef4256795db7fb055b180a07ce84de5c Mon Sep 17 00:00:00 2001 From: Ole Troan Date: Thu, 2 Aug 2018 19:19:21 +0200 Subject: PAPI: Union pad at the end of short fields instead of at head. Hopefully that's going to be consistent across platforms, compilers and ABI. Change-Id: I0b82565288d88fd046278d4d8288ec1488273ba5 Signed-off-by: Ole Troan --- src/vpp-api/python/vpp_papi/vpp_serializer.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/vpp-api/python/vpp_papi/vpp_serializer.py') diff --git a/src/vpp-api/python/vpp_papi/vpp_serializer.py b/src/vpp-api/python/vpp_papi/vpp_serializer.py index 9b30d5caa56..cd9a281964a 100644 --- a/src/vpp-api/python/vpp_papi/vpp_serializer.py +++ b/src/vpp-api/python/vpp_papi/vpp_serializer.py @@ -232,17 +232,15 @@ class VPPUnionType(): for k, v in data.items(): logger.debug("Key: {} Value: {}".format(k, v)) b = self.packers[k].pack(v, kwargs) - offset = self.size - self.packers[k].size break r = bytearray(self.size) - r[offset:] = b + r[:len(b)] = b return r def unpack(self, data, offset=0, result=None): r = [] for k, p in self.packers.items(): - union_offset = self.size - p.size - r.append(p.unpack(data, offset + union_offset)) + r.append(p.unpack(data, offset)) return self.tuple._make(r) -- cgit 1.2.3-korg