aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib
diff options
context:
space:
mode:
authorGravatar Mark D. Roth <roth@google.com>2016-09-13 14:30:18 -0700
committerGravatar Mark D. Roth <roth@google.com>2016-09-13 14:30:18 -0700
commite2bdd54126ac0003f3b7b5880f2c0c69743f5b82 (patch)
tree5b48a230cafcde70ad42f0cb08328b346724ef0d /src/core/lib
parentbf3596ef5f552190e9350e7376b3b533753e890c (diff)
Fix setting deadline in server call.
Diffstat (limited to 'src/core/lib')
-rw-r--r--src/core/lib/surface/call.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/lib/surface/call.c b/src/core/lib/surface/call.c
index 424cd00d96..0ced42a571 100644
--- a/src/core/lib/surface/call.c
+++ b/src/core/lib/surface/call.c
@@ -1216,6 +1216,13 @@ static void receiving_initial_metadata_ready(grpc_exec_ctx *exec_ctx,
GPR_TIMER_BEGIN("validate_filtered_metadata", 0);
validate_filtered_metadata(exec_ctx, bctl);
GPR_TIMER_END("validate_filtered_metadata", 0);
+
+ if (gpr_time_cmp(md->deadline, gpr_inf_future(md->deadline.clock_type)) !=
+ 0 &&
+ !call->is_client) {
+ call->send_deadline = gpr_convert_clock_type(md->deadline,
+ GPR_CLOCK_MONOTONIC);
+ }
}
call->has_initial_md_been_received = true;