THRIFT-1405: Delphi compiler does not generates container serializer properly
Client: delphi
Patch: Kenjiro Fukumitsu
Fixess a bug in the function that generates serializer of containers
git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1189009 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/compiler/cpp/src/generate/t_delphi_generator.cc b/compiler/cpp/src/generate/t_delphi_generator.cc
index cb1aa2e..fc684df 100644
--- a/compiler/cpp/src/generate/t_delphi_generator.cc
+++ b/compiler/cpp/src/generate/t_delphi_generator.cc
@@ -1941,6 +1941,9 @@
generate_serialize_list_element(out, is_xception, (t_list*)ttype, iter, local_vars);
}
+ indent_down_impl();
+ indent_impl(out) << "end;" << endl;
+
if (ttype->is_map()) {
indent_impl(out) << "oprot.WriteMapEnd();" << endl;
} else if (ttype->is_set()) {
@@ -1948,9 +1951,6 @@
} else if (ttype->is_list()) {
indent_impl(out) << "oprot.WriteListEnd();" << endl;
}
-
- indent_down_impl();
- indent_impl(out) << "end;" << endl;
}
void t_delphi_generator::generate_serialize_map_element(ostream& out, bool is_xception, t_map* tmap, string iter, string map, ostream& local_vars) {