From f49041c083e12c89c7d8d8ebdcafcb3b566534c4 Mon Sep 17 00:00:00 2001 From: Mark Slee Date: Fri, 19 Jan 2007 23:49:00 +0000 Subject: [PATCH] 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 --- compiler/cpp/src/generate/t_xsd_generator.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) 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 -- 2.17.1