[ https://issues.apache.org/jira/browse/THRIFT-3584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15123255#comment-15123255 ]
WangYaofu edited comment on THRIFT-3584 at 1/29/16 9:38 AM: ------------------------------------------------------------ I modified the Lua compiler and here are pull request on github for thrift mirror. https://github.com/apache/thrift/pull/824 was (Author: gityf): I modified the Lua compiler and here are pull request on github for thrfit mirror. https://github.com/apache/thrift/pull/824 > the value(false) for parameter self.argBool will be lost when condition is > 'if self.argBool then' . > --------------------------------------------------------------------------------------------------- > > Key: THRIFT-3584 > URL: https://issues.apache.org/jira/browse/THRIFT-3584 > Project: Thrift > Issue Type: Bug > Components: Lua - Compiler > Affects Versions: 0.9.3 > Environment: Linux Windows > Reporter: WangYaofu > Fix For: 0.9.4 > > > To check element of self whether nil or not,avoid the value(false) of BOOL is > lost. > eg. > {code:title=Before} > if self.argBool then > oprot:writeFieldBegin('argBool', TType.BOOL, 13) > oprot:writeBool(self.argBool) > oprot:writeFieldEnd() > end > {code} > {code:title=After} > if self.argBool ~= nil then > oprot:writeFieldBegin('argBool', TType.BOOL, 13) > oprot:writeBool(self.argBool) > oprot:writeFieldEnd() > end > {code} > Why: > the value(false) for parameter self.argBool will be lost when condition is > 'if self.argBool then' as before. -- This message was sent by Atlassian JIRA (v6.3.4#6332)