[ https://issues.apache.org/jira/browse/THRIFT-3533?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15108954#comment-15108954 ]
Chris Bannister commented on THRIFT-3533: ----------------------------------------- [~jensg] can you take a look at this patch, it causes the compiler to now generate IsSet* methods for all types to avoid nil pointer panics, and returns an error if the field is required but not set. > Can not send nil pointer as service method argument > --------------------------------------------------- > > Key: THRIFT-3533 > URL: https://issues.apache.org/jira/browse/THRIFT-3533 > Project: Thrift > Issue Type: Bug > Components: Go - Compiler > Affects Versions: 0.9.3 > Reporter: Chris Bannister > Attachments: 0001-go-compiler-handle-nil-fields-correctly.patch > > > If you try to send a nil struct as an argument to a service method a panic > occurs as it tries to write out all the fields in the struct, the python > generated code has guarding 'if self.x != None:' for every struct field, > whereas Go only outputs the 'if p.IsSet()' when the field is declared > optional, which is not possible for argument lists. -- This message was sent by Atlassian JIRA (v6.3.4#6332)