From 27658f41baa23b9f2fcaa963da08bdceb91ea924 Mon Sep 17 00:00:00 2001
From: Yang Gao <yangg@google.com>
Date: Tue, 17 Feb 2015 11:47:48 -0800
Subject: [PATCH] Clear receive message buffer when adding it, so that any
 reused buffer will not appear when decoding fails.

---
 src/cpp/common/call.cc | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/cpp/common/call.cc b/src/cpp/common/call.cc
index 9ec93bc626..0922a6e460 100644
--- a/src/cpp/common/call.cc
+++ b/src/cpp/common/call.cc
@@ -31,6 +31,7 @@
  *
  */
 
+#include <google/protobuf/message.h>
 #include <grpc/support/alloc.h>
 #include <grpc++/impl/call.h>
 #include <grpc++/client_context.h>
@@ -144,6 +145,7 @@ void CallOpBuffer::AddSendMessage(const google::protobuf::Message& message) {
 
 void CallOpBuffer::AddRecvMessage(google::protobuf::Message* message) {
   recv_message_ = message;
+  recv_message_->Clear();
 }
 
 void CallOpBuffer::AddClientSendClose() { client_send_close_ = true; }
-- 
GitLab