X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fxml%2Feasyxml.cxx;h=65a35513201a2de40a24b11b9b7cb01a63d28593;hb=b9a34b1b05ce9cab1b4b67816d7d24bd2bc364b7;hp=dbebf0cae79ccb9861490c56a4a456ad581da0ea;hpb=9dfd6970f118884ed2e9811f4f8d238c6bbf430a;p=simgear.git diff --git a/simgear/xml/easyxml.cxx b/simgear/xml/easyxml.cxx index dbebf0ca..65a35513 100644 --- a/simgear/xml/easyxml.cxx +++ b/simgear/xml/easyxml.cxx @@ -1,4 +1,8 @@ -// easyxml.cxx - implementation of EasyXML interfaces. +/** + * \file easyxml.cxx - implementation of EasyXML interfaces. + * Written by David Megginson, 2000-2001 + * This file is in the Public Domain, and comes with NO WARRANTY of any kind. + */ #include @@ -7,10 +11,10 @@ #include "easyxml.hxx" #include "xmlparse.h" -#include STL_FSTREAM -#include STL_IOSTREAM +#include +#include -SG_USING_STD(ifstream); +using std::ifstream; @@ -254,6 +258,7 @@ readXML (istream &input, XMLVisitor &visitor, const string &path) } XML_ParserFree(parser); + visitor.endXML(); } void @@ -263,12 +268,12 @@ readXML (const string &path, XMLVisitor &visitor) if (input.good()) { try { readXML(input, visitor, path); - } catch (sg_io_exception &e) { + } catch (sg_io_exception &) { input.close(); - throw e; - } catch (sg_throwable &t) { + throw; + } catch (sg_throwable &) { input.close(); - throw t; + throw; } } else { throw sg_io_exception("Failed to open file", sg_location(path), @@ -299,6 +304,7 @@ readXML (const char *buf, const int size, XMLVisitor &visitor) } XML_ParserFree(parser); + visitor.endXML(); } // end of easyxml.cxx