[ 
https://issues.apache.org/jira/browse/THRIFT-2526?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14153443#comment-14153443
 ] 

ASF GitHub Bot commented on THRIFT-2526:
----------------------------------------

Github user jfarrell commented on the pull request:

    https://github.com/apache/thrift/pull/120#issuecomment-57352548
  
    closing due to patch incorporated in commit 
7ca13f5507af5c67e0e93a2774f2b122374e0276


> Assignment operators and copy constructors in c++ don't copy the __isset 
> struct
> -------------------------------------------------------------------------------
>
>                 Key: THRIFT-2526
>                 URL: https://issues.apache.org/jira/browse/THRIFT-2526
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Compiler
>    Affects Versions: 0.9.2
>            Reporter: Dirk Vanden Boer
>            Assignee: Roger Meier
>            Priority: Trivial
>             Fix For: 0.9.2
>
>         Attachments: thrift-2526.patch
>
>
> I have a thrift protocol that returns a list of items. The items have 
> optional fields. Putting these items in a vector the optional fields are not 
> sent to clients as the assignment operator does not copy the __isset struct.
> Generated code:
> Item::Item(const Item& other3) {
>   id = other3.id;
>   title = other3.title;
>   itemclass = other3.itemclass;
>   thumbnailurl = other3.thumbnailurl;
> }
> Adding __isset = other3.__isset; fixes this issue.
> Same for the assignment operator.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to