From: Mark Slee Date: Fri, 19 Jan 2007 23:49:00 +0000 (+0000) Subject: Use proper name for catching exceptions X-Git-Tag: 0.2.0~1538 X-Git-Url: https://source.supwisdom.com/gerrit/gitweb?a=commitdiff_plain;h=f49041c083e12c89c7d8d8ebdcafcb3b566534c4;p=common%2Fthrift.git Use proper name for catching exceptions Reviewed By: tbr-dave git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664934 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/compiler/cpp/src/generate/t_xsd_generator.cc b/compiler/cpp/src/generate/t_xsd_generator.cc index b7114404..a2a6c43a 100644 --- a/compiler/cpp/src/generate/t_xsd_generator.cc +++ b/compiler/cpp/src/generate/t_xsd_generator.cc @@ -122,13 +122,13 @@ void t_xsd_generator::generate_service(t_service* tservice) { indent(f_xsd_) << s_xsd_types_.str(); // Keep a list of all the possible exceptions that might get thrown - set all_xceptions; + map all_xceptions; // List the elements that you might actually get vector functions = tservice->get_functions(); vector::iterator f_iter; for (f_iter = functions.begin(); f_iter != functions.end(); ++f_iter) { - string elemname = (*f_iter)->get_name() + "_result"; + string elemname = (*f_iter)->get_name() + "_response"; t_type* returntype = (*f_iter)->get_returntype(); generate_element(f_xsd_, elemname, returntype); f_xsd_ << endl; @@ -137,13 +137,13 @@ void t_xsd_generator::generate_service(t_service* tservice) { const std::vector& xceptions = xs->get_members(); vector::const_iterator x_iter; for (x_iter = xceptions.begin(); x_iter != xceptions.end(); ++x_iter) { - all_xceptions.insert((t_struct*)((*x_iter)->get_type())); + all_xceptions[(*x_iter)->get_name()] = (t_struct*)((*x_iter)->get_type()); } } - set::iterator ax_iter; + map::iterator ax_iter; for (ax_iter = all_xceptions.begin(); ax_iter != all_xceptions.end(); ++ax_iter) { - generate_element(f_xsd_, (*ax_iter)->get_name(), *ax_iter); + generate_element(f_xsd_, ax_iter->first, ax_iter->second); } // Close the XSD document