diff options
author | Jose <jose@zeroc.com> | 2017-09-20 11:05:13 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2017-09-20 11:05:13 +0200 |
commit | 7f0816001e085f482f8f9a34b7f8e06435907510 (patch) | |
tree | 46807f18b840e1c9816cd9b4aac001c8078d8bce /cpp/src/IceGrid/DescriptorParser.cpp | |
parent | Fixed Ice/acm Java7 build failure (diff) | |
download | ice-7f0816001e085f482f8f9a34b7f8e06435907510.tar.bz2 ice-7f0816001e085f482f8f9a34b7f8e06435907510.tar.xz ice-7f0816001e085f482f8f9a34b7f8e06435907510.zip |
Clean C++ exception code to only throw exception types
- Update C++ code to only throw types derived from
C++ exception
- Update C++ code to use one-shot constructors to
create the exceptions
Fix bug ICE-7892
Diffstat (limited to 'cpp/src/IceGrid/DescriptorParser.cpp')
-rw-r--r-- | cpp/src/IceGrid/DescriptorParser.cpp | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/cpp/src/IceGrid/DescriptorParser.cpp b/cpp/src/IceGrid/DescriptorParser.cpp index 1a877a16b67..97c009dce31 100644 --- a/cpp/src/IceGrid/DescriptorParser.cpp +++ b/cpp/src/IceGrid/DescriptorParser.cpp @@ -194,7 +194,7 @@ DescriptorHandler::startElement(const string& name, const IceXML::Attributes& at } catch(const DeploymentException& ex) { - throw ex.reason; + throw runtime_error(ex.reason); } } else @@ -468,13 +468,9 @@ DescriptorHandler::startElement(const string& name, const IceXML::Attributes& at attributes.checkUnknownAttributes(); } - catch(const string& reason) + catch(const exception& ex) { - error(reason); - } - catch(const char* reason) - { - error(reason); + error(ex.what()); } // @@ -690,13 +686,9 @@ DescriptorHandler::endElement(const string& name, int line, int column) _inDistrib = false; } } - catch(const string& reason) - { - error(reason); - } - catch(const char* reason) + catch(const exception& ex) { - error(reason); + error(ex.what()); } // |