audacia/src/xml
Paul Licameli 3bb04245c5 Strong exception safety in all uses of XMLFileWriter...
... Strong, meaning that the file at the specified path is created or modified
only if all write operations complete without exceptions, barring one very
unlikely possibility that a final file rename fails, but even in that case the
output is successfully written to some path.

This commit does not add throws, but changes the type thrown to a subclass of
AudacityException, so that GuardedCall will cause the user to see an error
dialog in all cases.

Duplicated logic for making temporary files and backups is now all in one
place, the class XMLWriter.

There may be more new GuardedCalls than necessary -- the catch-all for the
event loop, AudacityApp::OnExceptionInMainLoop, might be trusted instead in
some cases --  but they are sufficient.
2017-03-18 11:45:33 -04:00
..
XMLFileReader.cpp XMLFileReader uses std::vector 2016-02-17 18:19:40 -05:00
XMLFileReader.h Replace virtual with override wherever possible; eliminate needless virtual... 2016-02-26 12:35:38 -05:00
XMLTagHandler.cpp Fix mac build. No standard headers in Audacity.h. 2016-03-01 12:22:37 -05:00
XMLTagHandler.h Harmlessly qualify classes as final (or explicitly comment not)... 2016-02-24 20:58:30 -05:00
XMLWriter.cpp Strong exception safety in all uses of XMLFileWriter... 2017-03-18 11:45:33 -04:00
XMLWriter.h Strong exception safety in all uses of XMLFileWriter... 2017-03-18 11:45:33 -04:00
audacityproject.dtd Locate and position the current Audacity source code, and clear a variety of old junk out of the way into junk-branches 2010-01-23 19:44:49 +00:00