diff options
author | Craig Tiller <ctiller@google.com> | 2016-05-10 13:06:15 -0700 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2016-05-10 13:06:15 -0700 |
commit | 10dd6f299d904ff4a2cc2a9a4048d3d71f7f0877 (patch) | |
tree | f6861d4b311697d71584dbdd6f259151f79aa998 /src/core/lib/surface/call.c | |
parent | fc353d624944dcceeb67dd27e4fc48e747b17988 (diff) |
Fix refcounting bugs
Diffstat (limited to 'src/core/lib/surface/call.c')
-rw-r--r-- | src/core/lib/surface/call.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/lib/surface/call.c b/src/core/lib/surface/call.c index 1ad635710a..2dea2147ce 100644 --- a/src/core/lib/surface/call.c +++ b/src/core/lib/surface/call.c @@ -1172,11 +1172,14 @@ static void finish_batch(grpc_exec_ctx *exec_ctx, void *bctlp, GRPC_ERROR_UNREF(error); error = GRPC_ERROR_NONE; } + GRPC_ERROR_UNREF(bctl->error); bctl->error = error; gpr_mu_unlock(&call->mu); if (gpr_unref(&bctl->steps_to_complete)) { post_batch_completion(exec_ctx, bctl); } + + GRPC_ERROR_UNREF(error); } static grpc_call_error call_start_batch(grpc_exec_ctx *exec_ctx, |