aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/surface
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2015-06-30 10:28:29 -0700
committerGravatar Craig Tiller <ctiller@google.com>2015-06-30 10:28:29 -0700
commit6806e1e526b4b71561d0a2613aed8d180c269940 (patch)
tree1992c507e819ef5abbbb0eadd7cba5bc2c0f701f /src/core/surface
parent8ef88f96b3eb5a56174b5d09e596514138b4f7a7 (diff)
Fix leaking channel args
Diffstat (limited to 'src/core/surface')
-rw-r--r--src/core/surface/channel_create.c1
-rw-r--r--src/core/surface/secure_channel_create.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/src/core/surface/channel_create.c b/src/core/surface/channel_create.c
index 280927834b..09b4fb782b 100644
--- a/src/core/surface/channel_create.c
+++ b/src/core/surface/channel_create.c
@@ -117,6 +117,7 @@ static void subchannel_factory_ref(grpc_subchannel_factory *scf) {
static void subchannel_factory_unref(grpc_subchannel_factory *scf) {
subchannel_factory *f = (subchannel_factory *)scf;
if (gpr_unref(&f->refs)) {
+ grpc_channel_args_destroy(f->merge_args);
grpc_mdctx_unref(f->mdctx);
gpr_free(f);
}
diff --git a/src/core/surface/secure_channel_create.c b/src/core/surface/secure_channel_create.c
index 998acfc8cf..1dd9e61d0f 100644
--- a/src/core/surface/secure_channel_create.c
+++ b/src/core/surface/secure_channel_create.c
@@ -142,6 +142,7 @@ static void subchannel_factory_ref(grpc_subchannel_factory *scf) {
static void subchannel_factory_unref(grpc_subchannel_factory *scf) {
subchannel_factory *f = (subchannel_factory *)scf;
if (gpr_unref(&f->refs)) {
+ grpc_channel_args_destroy(f->merge_args);
grpc_mdctx_unref(f->mdctx);
gpr_free(f);
}