diff options
author | 2017-09-18 12:41:07 -0700 | |
---|---|---|
committer | 2017-09-18 12:41:07 -0700 | |
commit | 998bd2c7f46dc4bdd0e3381fcd1f4430fe3c3e32 (patch) | |
tree | f2bc929917f0920edfd7fa5e970dd6e22ab9a10e /src/core | |
parent | 63f31e8cd16b185fd735bd753afbc0375cd573aa (diff) |
Fix leak in grpclb's lb_on_response_received_locked
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.c b/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.c index a776a07d99..4fcfa745f1 100644 --- a/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.c +++ b/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.c @@ -1560,6 +1560,9 @@ static void lb_on_response_received_locked(grpc_exec_ctx *exec_ctx, void *arg, exec_ctx, glb_policy->lb_call, ops, (size_t)(op - ops), &glb_policy->lb_on_response_received); /* loop */ GPR_ASSERT(GRPC_CALL_OK == call_error); + } else { + GRPC_LB_POLICY_WEAK_UNREF(exec_ctx, &glb_policy->base, + "lb_on_response_received_locked_shutdown"); } } else { /* empty payload: call cancelled. */ /* dispose of the "lb_on_response_received_locked" weak ref taken in |