Handle nil requests in GRPC client method builder (#2186)
Handle nil requests in GRPC client method builder (#2186)

What's up

The GRPC client remote method builder function casts the request interface into a pointer to the proto request struct. However, if the endpoint's input is an empty message then the client will be passing in a nil request interface. This causes a panic at the site of the interface cast.

What this does

Checks if the proto request obj is nil before casting. If it's nil, then we return a pointer to the empty proto request struct instead of casting the request interface to it.

Fixes #2185
raphael/goa,goadesign/goa