summaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorJared Adams <jaxad0127@gmail.com>2010-08-05 16:28:30 -0600
committerJared Adams <jaxad0127@gmail.com>2010-08-05 16:42:54 -0600
commit6d315d0e61f419636021476582a49ab0b1f1b5e9 (patch)
tree38baba0bd749f2e36138f0119bfd13a4f9f1fcdb /src/main.cpp
parentc3e9fbfc9a92e5d75a0d1002cfba48947718dc4d (diff)
downloadmana-6d315d0e61f419636021476582a49ab0b1f1b5e9.tar.gz
mana-6d315d0e61f419636021476582a49ab0b1f1b5e9.tar.bz2
mana-6d315d0e61f419636021476582a49ab0b1f1b5e9.tar.xz
mana-6d315d0e61f419636021476582a49ab0b1f1b5e9.zip
Add better XML error logging and do some related cleanup
Error details from libxml2 are no longer ignored and are properly logged now. XML initialization code is now in the XML namespace. The XML::Document constructor that took a data pointer was removed because it wasn't being used and it would make the new logging less useful (no filename). Signed-off-by: Chuck Miller
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp23
1 files changed, 3 insertions, 20 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 56019976..29713c27 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -21,11 +21,10 @@
#include "main.h"
-#include "utils/gettext.h"
-
#include "client.h"
-#include <libxml/parser.h>
+#include "utils/gettext.h"
+#include "utils/xml.h"
#include <getopt.h>
#include <iostream>
@@ -178,22 +177,6 @@ static void initInternationalization()
#endif
}
-static void xmlNullLogger(void *ctx, const char *msg, ...)
-{
- // Does nothing, that's the whole point of it
-}
-
-// Initialize libxml2 and check for potential ABI mismatches between
-// compiled version and the shared library actually used.
-static void initXML()
-{
- xmlInitParser();
- LIBXML_TEST_VERSION;
-
- // Suppress libxml2 error messages
- xmlSetGenericErrorFunc(NULL, xmlNullLogger);
-}
-
int main(int argc, char *argv[])
{
@@ -227,7 +210,7 @@ int main(int argc, char *argv[])
}
atexit((void(*)()) PHYSFS_deinit);
- initXML();
+ XML::init();
Client client(options);
return client.exec();