aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/grpc++/impl/codegen/client_unary_call.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/grpc++/impl/codegen/client_unary_call.h')
-rw-r--r--include/grpc++/impl/codegen/client_unary_call.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/grpc++/impl/codegen/client_unary_call.h b/include/grpc++/impl/codegen/client_unary_call.h
index 70d65549c8..201e52ae07 100644
--- a/include/grpc++/impl/codegen/client_unary_call.h
+++ b/include/grpc++/impl/codegen/client_unary_call.h
@@ -69,7 +69,14 @@ Status BlockingUnaryCall(ChannelInterface* channel, const RpcMethod& method,
ops.ClientSendClose();
ops.ClientRecvStatus(context, &status);
call.PerformOps(&ops);
- GPR_CODEGEN_ASSERT((cq.Pluck(&ops) && ops.got_message) || !status.ok());
+ if (cq.Pluck(&ops)) {
+ if (!ops.got_message && status.ok()) {
+ return Status(StatusCode::UNIMPLEMENTED,
+ "No message returned for unary request");
+ }
+ } else {
+ GPR_CODEGEN_ASSERT(!status.ok());
+ }
return status;
}