Add missing writeEnd calls
Summary: When flush is called this also should be
Reviewed By: aditya
Test Plan: Use w/ PipedTransport. Should writeEnd() when an exception is thrown
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665261 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/compiler/cpp/src/generate/t_cpp_generator.cc b/compiler/cpp/src/generate/t_cpp_generator.cc
index 6de7452..7a31bc6 100644
--- a/compiler/cpp/src/generate/t_cpp_generator.cc
+++ b/compiler/cpp/src/generate/t_cpp_generator.cc
@@ -1460,7 +1460,8 @@
indent() << "args.write(oprot_);" << endl <<
endl <<
indent() << "oprot_->writeMessageEnd();" << endl <<
- indent() << "oprot_->getTransport()->flush();" << endl;
+ indent() << "oprot_->getTransport()->flush();" << endl <<
+ indent() << "oprot_->getTransport()->writeEnd();" << endl;
scope_down(f_service_);
f_service_ << endl;
@@ -1672,6 +1673,7 @@
indent() << " x.write(oprot);" << endl <<
indent() << " oprot->writeMessageEnd();" << endl <<
indent() << " oprot->getTransport()->flush();" << endl <<
+ indent() << " oprot->getTransport()->writeEnd();" << endl <<
indent() << " return true;" << endl <<
indent() << "}" << endl <<
endl <<
@@ -1702,6 +1704,7 @@
indent() << " x.write(oprot);" << endl <<
indent() << " oprot->writeMessageEnd();" << endl <<
indent() << " oprot->getTransport()->flush();" << endl <<
+ indent() << " oprot->getTransport()->writeEnd();" << endl <<
indent() << " return true;" << endl;
} else {
f_service_ <<