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

Hudson commented on THRIFT-3293:
--------------------------------

SUCCESS: Integrated in Thrift #1643 (See 
[https://builds.apache.org/job/Thrift/1643/])
THRIFT-3293 JavaScript: null values turn into empty structs in constructor 
(henrique: rev 738143cf36436d65c7e379351968e6e0a1f4ca3f)
* compiler/cpp/src/generate/t_js_generator.cc
* lib/nodejs/test/deep-constructor.test.js
* test/JsDeepConstructorTest.thrift


> JavaScript: null values turn into empty structs in constructor
> --------------------------------------------------------------
>
>                 Key: THRIFT-3293
>                 URL: https://issues.apache.org/jira/browse/THRIFT-3293
>             Project: Thrift
>          Issue Type: Bug
>          Components: JavaScript - Compiler, Node.js - Compiler
>            Reporter: HÃ¥kon Hitland
>             Fix For: 0.9.3
>
>         Attachments: thrift-3293-null-init.patch
>
>
> Given a struct definition with an optional struct field, e.g.
> {code}
> struct Foo {
>   1: Bar bar,
> }
> {code}
> Trying to initialize it to a null value like
> {code}
> new Foo({"bar": null});
> {code}
> will instead set bar to an empty Bar object.
> This happens because the constructor tests for undefined values, but not for 
> null.
> In addition to direct user calls, the internal copyList and copyMap functions 
> introduced for THRIFT-3122 now often trigger this by initializing one object 
> from another, making it hard to work around.



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

Reply via email to