shuo li created THRIFT-5299:
-------------------------------
Summary: rs implementation compact protocol varint implementation
is wrong
Key: THRIFT-5299
URL: https://issues.apache.org/jira/browse/THRIFT-5299
Project: Thrift
Issue Type: Bug
Components: Rust - Library
Affects Versions: 0.13.0
Reporter: shuo li
While reviewing code, I discovered a bug in compact protocol.
The length of byte is decoded with integer-encoding u32, which does not do
zigzag decode first.
The fix should be use i32 as decode, then convert to unsigned value.
In specification, it is explicitly specified that the length field is SIGNED.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)