|
|
|
@ -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); |
|
|
|
|