The DecodeVarint was, as a comment describes, lifted from
google.protobuf.internal.decoder. Unfortunately, the relative indentation of
some lines was changed, changing what scope they fell under. This changed the
behavior of the function, breaking it for multibyte and negative values.
This change restores the correct indentation and fixes the function's
behavior.
Change-Id: If645649506b0fe5a617b37a8202c9ca1c57aaf15
Reviewed-on: https://gem5-review.googlesource.com/5000
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
result |= ~mask
else:
result &= mask
- return (result, pos)
- shift += 7
- if shift >= 64:
- raise IOError('Too many bytes when decoding varint.')
+ return (result, pos)
+ shift += 7
+ if shift >= 64:
+ raise IOError('Too many bytes when decoding varint.')
def decodeMessage(in_file, message):
"""