From 88508be0b2c0f916e348019eabf12b469eb7b9a1 Mon Sep 17 00:00:00 2001 From: milla Date: Fri, 28 May 2021 11:12:49 +0200 Subject: Add KM logs and remove semicolon from pre-processor directive --- src/KM_xml.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/KM_xml.cpp') diff --git a/src/KM_xml.cpp b/src/KM_xml.cpp index 5037391..31bb04d 100644 --- a/src/KM_xml.cpp +++ b/src/KM_xml.cpp @@ -612,6 +612,9 @@ Kumu::XMLElement::ParseFirstFromString(const char* document, ui32_t doc_len) if ( ! XML_Parse(Parser, document, doc_len, 1) ) { + DefaultLogSink().Error("XML Parse error on line %d: %s\n", + XML_GetCurrentLineNumber(Parser), + XML_ErrorString(XML_GetErrorCode(Parser))); XML_ParserFree(Parser); return false; } @@ -1022,8 +1025,23 @@ Kumu::XMLElement::ParseFirstFromString(const char* document, ui32_t doc_len) ++errorCount; } } + catch (const XMLException& e) + { + char* message = XMLString::transcode(e.getMessage()); + DefaultLogSink().Error("Parser error: %s\n", message); + XMLString::release(&message); + errorCount++; + } + catch (const SAXParseException& e) + { + char* message = XMLString::transcode(e.getMessage()); + DefaultLogSink().Error("Parser error: %s at line %d\n", message, e.getLineNumber()); + XMLString::release(&message); + errorCount++; + } catch (...) { + DefaultLogSink().Error("Unexpected XML parser error\n"); errorCount++; } -- cgit v1.2.3