diff options
author | 2015-06-23 14:37:15 -0700 | |
---|---|---|
committer | 2015-06-23 14:37:15 -0700 | |
commit | a58cab30b2e47f1efdad8cd78b820e818ba30fbb (patch) | |
tree | 3883d7eab3a76b17a0182c7c4c5639d5d3835aab /src/cpp | |
parent | 3deb0069f4861451fc174859c293ddafcad648a9 (diff) |
release memory even if the status is false
Diffstat (limited to 'src/cpp')
-rw-r--r-- | src/cpp/server/server.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/cpp/server/server.cc b/src/cpp/server/server.cc index 4c44d9ec50..f930dbb2b8 100644 --- a/src/cpp/server/server.cc +++ b/src/cpp/server/server.cc @@ -369,11 +369,12 @@ Server::GenericAsyncRequest::GenericAsyncRequest( bool Server::GenericAsyncRequest::FinalizeResult(void** tag, bool* status) { // TODO(yangg) remove the copy here. if (*status) { - static_cast<GenericServerContext*>(context_)->method_ = call_details_.method; + static_cast<GenericServerContext*>(context_)->method_ = + call_details_.method; static_cast<GenericServerContext*>(context_)->host_ = call_details_.host; - gpr_free(call_details_.method); - gpr_free(call_details_.host); } + gpr_free(call_details_.method); + gpr_free(call_details_.host); return BaseAsyncRequest::FinalizeResult(tag, status); } |