From 2a3c96a8693f054353732bd1def5aaa780ea256e Mon Sep 17 00:00:00 2001
From: Yang Gao <yangg@google.com>
Date: Wed, 11 Mar 2015 23:32:40 -0700
Subject: [PATCH] resolve leak, now asan clean

---
 src/cpp/server/server.cc | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/cpp/server/server.cc b/src/cpp/server/server.cc
index 44c8a768d2..f72b8a30a6 100644
--- a/src/cpp/server/server.cc
+++ b/src/cpp/server/server.cc
@@ -36,6 +36,7 @@
 
 #include <grpc/grpc.h>
 #include <grpc/grpc_security.h>
+#include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc++/completion_queue.h>
 #include <grpc++/generic_service.h>
@@ -355,8 +356,11 @@ class Server::AsyncRequest GRPC_FINAL : public CompletionQueueTag {
                 array_.metadata[i].value + array_.metadata[i].value_length)));
       }
       if (generic_ctx_) {
+        // TODO(yangg) remove the copy here.
         generic_ctx_->method_ = call_details_.method;
         generic_ctx_->host_ = call_details_.host;
+        gpr_free(call_details_.method);
+        gpr_free(call_details_.host);
       }
     }
     ctx->call_ = call_;
-- 
GitLab