diff options
author | Mark D. Roth <roth@google.com> | 2016-09-13 14:30:18 -0700 |
---|---|---|
committer | Mark D. Roth <roth@google.com> | 2016-09-13 14:30:18 -0700 |
commit | e2bdd54126ac0003f3b7b5880f2c0c69743f5b82 (patch) | |
tree | 5b48a230cafcde70ad42f0cb08328b346724ef0d /src/core/lib | |
parent | bf3596ef5f552190e9350e7376b3b533753e890c (diff) |
Fix setting deadline in server call.
Diffstat (limited to 'src/core/lib')
-rw-r--r-- | src/core/lib/surface/call.c | 7 |
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; |