diff options
author | Craig Tiller <ctiller@google.com> | 2017-02-01 10:21:42 -0800 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2017-02-01 10:21:42 -0800 |
commit | 239af8b9fc800f04bde455479c003dcecebee409 (patch) | |
tree | 8f4cd38f0683c4af377e3b277dab2eac9f12f0bc /src/core/lib/surface/call.c | |
parent | a3310f8e1dbbf98bbe91f8b334523496afc856a2 (diff) |
Fix fuzzing detected crash
Diffstat (limited to 'src/core/lib/surface/call.c')
-rw-r--r-- | src/core/lib/surface/call.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/core/lib/surface/call.c b/src/core/lib/surface/call.c index 27097faaa6..f0135acde8 100644 --- a/src/core/lib/surface/call.c +++ b/src/core/lib/surface/call.c @@ -312,15 +312,19 @@ grpc_error *grpc_call_create(grpc_exec_ctx *exec_ctx, /* TODO(ctiller): This should change to use the appropriate census start_op * call. */ if (args->propagation_mask & GRPC_PROPAGATE_CENSUS_TRACING_CONTEXT) { - GPR_ASSERT(args->propagation_mask & GRPC_PROPAGATE_CENSUS_STATS_CONTEXT); + if (0 == (args->propagation_mask & GRPC_PROPAGATE_CENSUS_STATS_CONTEXT)) { + add_init_error(&error, + GRPC_ERROR_CREATE("Census tracing propagation requested " + "without Census context propagation")); + } grpc_call_context_set( call, GRPC_CONTEXT_TRACING, args->parent_call->context[GRPC_CONTEXT_TRACING].value, NULL); } else if (0 == (args->propagation_mask & GRPC_PROPAGATE_CENSUS_STATS_CONTEXT)) { add_init_error(&error, - GRPC_ERROR_CREATE("Census tracing propagation requested " - "without Census context propagation")); + GRPC_ERROR_CREATE("Census context propagation requested " + "without Census tracing propagation")); } if (args->propagation_mask & GRPC_PROPAGATE_CANCELLATION) { call->cancellation_is_inherited = 1; |