mirror of
https://github.com/apache/thrift.git
synced 2026-10-29 00:46:21 +08:00
Client: php TCompactProtocol::readI64() decodes its varint in a loop of its own, apart from readVarint(), and kept reading continuation bytes for as long as the transport delivered them. It now stops after MAX_VARINT_BYTES, as readVarint() does, and throws TProtocolException INVALID_DATA for a longer varint. Two unit tests cover the limit and the longest valid encoding. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>