aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/cpp/server
diff options
context:
space:
mode:
authorGravatar Yang Gao <yangg@google.com>2015-03-11 23:32:40 -0700
committerGravatar Yang Gao <yangg@google.com>2015-03-11 23:32:40 -0700
commit2a3c96a8693f054353732bd1def5aaa780ea256e (patch)
tree7abc92117bfedc1d1d06a9e050fe7ddc037b2f31 /src/cpp/server
parent005eb88c45a849ed73d02e9cfbdce939ea34540e (diff)
resolve leak, now asan clean
Diffstat (limited to 'src/cpp/server')
-rw-r--r--src/cpp/server/server.cc4
1 files changed, 4 insertions, 0 deletions
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_;