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)

Reply via email to