aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/channel/message_size_filter.c
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2017-03-10 10:20:17 -0800
committerGravatar Craig Tiller <ctiller@google.com>2017-03-10 10:20:17 -0800
commit72920cc08ac8bee1816422974468502ce43e9b7b (patch)
tree0428d022df797c0ed3b4e0bb5287144f0fd62d6b /src/core/lib/channel/message_size_filter.c
parent8c09d6795a8702585e9bb6596c2ae8da33709078 (diff)
Conversion progress
Diffstat (limited to 'src/core/lib/channel/message_size_filter.c')
-rw-r--r--src/core/lib/channel/message_size_filter.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/core/lib/channel/message_size_filter.c b/src/core/lib/channel/message_size_filter.c
index b424c0d2ac..e99b767bef 100644
--- a/src/core/lib/channel/message_size_filter.c
+++ b/src/core/lib/channel/message_size_filter.c
@@ -141,11 +141,13 @@ static void start_transport_stream_op(grpc_exec_ctx* exec_ctx,
grpc_transport_stream_op* op) {
call_data* calld = elem->call_data;
// Check max send message size.
- if (op->send_message != NULL && calld->max_send_size >= 0 &&
- op->send_message->length > (size_t)calld->max_send_size) {
+ if (op->send_message && calld->max_send_size >= 0 &&
+ op->payload->send_message.send_message->length >
+ (size_t)calld->max_send_size) {
char* message_string;
gpr_asprintf(&message_string, "Sent message larger than max (%u vs. %d)",
- op->send_message->length, calld->max_send_size);
+ op->payload->send_message.send_message->length,
+ calld->max_send_size);
grpc_transport_stream_op_finish_with_failure(
exec_ctx, op, grpc_error_set_int(GRPC_ERROR_CREATE(message_string),
GRPC_ERROR_INT_GRPC_STATUS,
@@ -154,10 +156,11 @@ static void start_transport_stream_op(grpc_exec_ctx* exec_ctx,
return;
}
// Inject callback for receiving a message.
- if (op->recv_message_ready != NULL) {
- calld->next_recv_message_ready = op->recv_message_ready;
- calld->recv_message = op->recv_message;
- op->recv_message_ready = &calld->recv_message_ready;
+ if (op->payload->recv_message.recv_message_ready != NULL) {
+ calld->next_recv_message_ready =
+ op->payload->recv_message.recv_message_ready;
+ calld->recv_message = op->payload->recv_message.recv_message;
+ op->payload->recv_message.recv_message_ready = &calld->recv_message_ready;
}
// Chain to the next filter.
grpc_call_next_op(exec_ctx, elem, op);