From 7d3d9ca24c3079030b2d57c1548a9d1d32b4829b Mon Sep 17 00:00:00 2001
From: Vijay Pai <vpai@google.com>
Date: Thu, 2 Apr 2015 14:34:27 -0700
Subject: [PATCH] Eliminate a redundant unlock-lock pair since this code is
 only invoked from one place

---
 src/core/transport/metadata.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/core/transport/metadata.c b/src/core/transport/metadata.c
index 1c15716fad..066cc263a1 100644
--- a/src/core/transport/metadata.c
+++ b/src/core/transport/metadata.c
@@ -97,7 +97,7 @@ static void internal_string_ref(internal_string *s);
 static void internal_string_unref(internal_string *s);
 static void discard_metadata(grpc_mdctx *ctx);
 static void gc_mdtab(grpc_mdctx *ctx);
-static void metadata_context_destroy(grpc_mdctx *ctx);
+static void metadata_context_destroy_locked(grpc_mdctx *ctx);
 
 static void lock(grpc_mdctx *ctx) { gpr_mu_lock(&ctx->mu); }
 
@@ -122,8 +122,7 @@ static void unlock(grpc_mdctx *ctx) {
       discard_metadata(ctx);
     }
     if (ctx->strtab_count == 0) {
-      gpr_mu_unlock(&ctx->mu);
-      metadata_context_destroy(ctx);
+      metadata_context_destroy_locked(ctx);
       return;
     }
   }
@@ -185,8 +184,7 @@ static void discard_metadata(grpc_mdctx *ctx) {
   }
 }
 
-static void metadata_context_destroy(grpc_mdctx *ctx) {
-  gpr_mu_lock(&ctx->mu);
+static void metadata_context_destroy_locked(grpc_mdctx *ctx) {
   GPR_ASSERT(ctx->strtab_count == 0);
   GPR_ASSERT(ctx->mdtab_count == 0);
   GPR_ASSERT(ctx->mdtab_free == 0);
-- 
GitLab