You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Christopher Friedt (Jira)" <ji...@apache.org> on 2020/02/14 15:57:00 UTC
[jira] [Created] (THRIFT-5093) TMemoryBuffer constructor
initializes wpos incorrectly
Christopher Friedt created THRIFT-5093:
------------------------------------------
Summary: TMemoryBuffer constructor initializes wpos incorrectly
Key: THRIFT-5093
URL: https://issues.apache.org/jira/browse/THRIFT-5093
Project: Thrift
Issue Type: Bug
Components: C++ - Library
Affects Versions: 0.13.0, 0.12.0, 0.11.0, 0.10.0
Reporter: Christopher Friedt
The third constructor of TMemoryBuffer incorrectly initializes the write pointer (wpos) to be at the end of the buffer instead of at the front when it calls initCommon(). Looking at references to initCommon(), the wpos parameter is initialized to 0 everywhere else it is used.
https://github.com/apache/thrift/blob/master/lib/cpp/src/thrift/transport/TBufferTransports.h#L535
That causes the branch below to never be taken and therefore data is never written to the buffer.
https://github.com/apache/thrift/blob/master/lib/cpp/src/thrift/transport/TBufferTransports.h#L98
It's a simple one-line fix. Will submit a PR in GitHub.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)