[
https://issues.apache.org/jira/browse/THRIFT-1200?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13046829#comment-13046829
]
Roger Meier commented on THRIFT-1200:
-------------------------------------
recommitted a little modification: added {} for if clause as required by jslint
see broken build: https://builds.apache.org/job/Thrift/160/
> JS compiler generates code that clobbers existing namespaces
> ------------------------------------------------------------
>
> Key: THRIFT-1200
> URL: https://issues.apache.org/jira/browse/THRIFT-1200
> Project: Thrift
> Issue Type: Bug
> Components: JavaScript - Compiler
> Affects Versions: 0.6.1
> Environment: all
> Reporter: Ilya Maykov
> Assignee: Ilya Maykov
> Fix For: 0.7
>
> Attachments: THRIFT-1200-js-namespace-fix.txt
>
>
> The JavaScript compiler currently generates code that will clobber an
> already-existing namespace. It should check if the namespace exists before
> initializing it to {}. Example code pre-patch, assuming the .thrift file has
> the declaration {{namespace js CompanyName.ModuleName}}:
> {code:JavaScript}
> var CompanyName = {};
> CompanyName.ModuleName = {}
> {code}
> Becomes this after patch:
> {code:JavaScript}
> if (typeof CompanyName === 'undefined') CompanyName = {};
> if (typeof CompanyName.ModuleName === 'undefined') CompanyName.ModuleName =
> {};
> {code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira