diff options
Diffstat (limited to 'src/xmpp/xmpp_parser.cpp')
-rw-r--r-- | src/xmpp/xmpp_parser.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/xmpp/xmpp_parser.cpp b/src/xmpp/xmpp_parser.cpp index 536d9da..6bb0d28 100644 --- a/src/xmpp/xmpp_parser.cpp +++ b/src/xmpp/xmpp_parser.cpp @@ -55,7 +55,8 @@ XmppParser::~XmppParser() int XmppParser::feed(const char* data, const int len, const bool is_final) { int res = XML_Parse(this->parser, data, len, is_final); - if (res == 0) + if (res == XML_STATUS_ERROR && + (XML_GetErrorCode(this->parser) != XML_ERROR_FINISHED)) log_error("Xml_Parse encountered an error: " << XML_ErrorString(XML_GetErrorCode(this->parser))) return res; @@ -64,7 +65,7 @@ int XmppParser::feed(const char* data, const int len, const bool is_final) int XmppParser::parse(const int len, const bool is_final) { int res = XML_ParseBuffer(this->parser, len, is_final); - if (res == 0) + if (res == XML_STATUS_ERROR) log_error("Xml_Parsebuffer encountered an error: " << XML_ErrorString(XML_GetErrorCode(this->parser))); return res; |