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) {