[ https://issues.apache.org/jira/browse/THRIFT-2923?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Radoslaw Gruchalski updated THRIFT-2923: ---------------------------------------- Patch Info: Patch Available Pull request created: https://github.com/apache/thrift/pull/342 > JavaScript client assumes a message being written > ------------------------------------------------- > > Key: THRIFT-2923 > URL: https://issues.apache.org/jira/browse/THRIFT-2923 > Project: Thrift > Issue Type: Bug > Components: JavaScript - Library > Affects Versions: 0.9.2 > Reporter: Radoslaw Gruchalski > Priority: Minor > > I am working on a solution which uses Thrift directly, without embedded RPC > framework, it's sending messages via UDP. Currently being integrated into > Chrome Extension and I found a bug when doing the following: > {noformat} > var transport = new Thrift.TWebSocketTransport("http://dummy"); > var protocol = new Thrift.Protocol( transport ); > digest.write( protocol ); > {noformat} > The error is: > {noformat} > Cannot read property 'push' of undefined. > {noformat} > The reason for this behaviour is: > digest.write calls protocol.writeStructBegin which uses > this.tpos.push(this.tstack.length) in > https://github.com/apache/thrift/blob/master/lib/js/src/thrift.js#L778 but > tpos and tstack aren't defined unless writeMessageBegin is called in > https://github.com/apache/thrift/blob/master/lib/js/src/thrift.js#L751. > Expected behaviour: > tstack and tpos should be defined in the Protocol "constructor", here: > https://github.com/apache/thrift/blob/master/lib/js/src/thrift.js#L687. -- This message was sent by Atlassian JIRA (v6.3.4#6332)