[
https://issues.apache.org/jira/browse/THRIFT-1518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13213781#comment-13213781
]
Bryan Duxbury commented on THRIFT-1518:
---------------------------------------
Seems like a pretty big oversight on our part. I would love if you included a
test, but I'll understand if that's not going to happen.
> 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