[ https://issues.apache.org/jira/browse/THRIFT-1518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13214000#comment-13214000 ]
Thomas Wiggins commented on THRIFT-1518: ---------------------------------------- *To Bryan Duxbury:* I'm afraid I can't promise anything due to free time, so if any other developer is reading this wants to look at writing a test themselves then go ahead. On the off-chance I do have some time though should it be just the "test/ThriftTest.thrift", "test/cpp/src/TestClient.cpp" and "test/cpp/src/TestServer.cpp" files that need updating with new tests? I've not contributed to Thrift prior to this post so I'm not too familiar with the project layout for writing additional tests. > Generated C++ code only sends the first optional field in the write() > function for a struct. > -------------------------------------------------------------------------------------------- > > Key: THRIFT-1518 > URL: https://issues.apache.org/jira/browse/THRIFT-1518 > Project: Thrift > Issue Type: Bug > Components: C++ - Compiler > Affects Versions: 0.9 > Reporter: Chris Stylianou > Fix For: 0.9 > > Attachments: THRIFT-1518_fix.patch > > > The generated C++ code for a struct will only write the first optional field > that is set before moving on to writing the required fields, instead it > should be checking and writing all of the optional fields if they have been > set. Looking at the generated code it is doing "if-else" tests for writing > each optional field, this limits it to only writing the first optional field > it comes across and should be easily fixed by replacing it with "if" checks > instead. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira