From 745f973eebe66c3d07953f4d756c25478bcc8832 Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 21 Nov 2019 07:34:26 -0500 Subject: [PATCH] ensure there is at least one slice in send_message buffer --- src/csharp/ext/grpc_csharp_ext.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/csharp/ext/grpc_csharp_ext.c b/src/csharp/ext/grpc_csharp_ext.c index d9bf85e02c7..21f8f89a198 100644 --- a/src/csharp/ext/grpc_csharp_ext.c +++ b/src/csharp/ext/grpc_csharp_ext.c @@ -1244,7 +1244,9 @@ GPR_EXPORT void* GPR_CALLTYPE grpcsharp_slice_buffer_adjust_tail_space( } if (buffer->count == 0) { - return NULL; + // when sending messages, C-core requires that there + // is at least on slice, even for empty payload. + grpc_slice_buffer_add_indexed(buffer, grpc_empty_slice()); } grpc_slice* last_slice = &(buffer->slices[buffer->count - 1]); return GRPC_SLICE_END_PTR(*last_slice) - requested_tail_space;