[libxml2] Fail parsing early on if encoding conversion failed
- From: Daniel Veillard <veillard src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libxml2] Fail parsing early on if encoding conversion failed
- Date: Mon, 29 Jun 2015 08:12:18 +0000 (UTC)
commit 709a952110e98621c9b78c4f26462a9d8333102e
Author: Daniel Veillard <veillard redhat com>
Date: Mon Jun 29 16:10:26 2015 +0800
Fail parsing early on if encoding conversion failed
For https://bugzilla.gnome.org/show_bug.cgi?id=751631
If we fail conversing the current input stream while
processing the encoding declaration of the XMLDecl
then it's safer to just abort there and not try to
report further errors.
parser.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
---
diff --git a/parser.c b/parser.c
index a3a9568..0edd53b 100644
--- a/parser.c
+++ b/parser.c
@@ -10471,7 +10471,11 @@ xmlParseEncodingDecl(xmlParserCtxtPtr ctxt) {
handler = xmlFindCharEncodingHandler((const char *) encoding);
if (handler != NULL) {
- xmlSwitchToEncoding(ctxt, handler);
+ if (xmlSwitchToEncoding(ctxt, handler) < 0) {
+ /* failed to convert */
+ ctxt->errNo = XML_ERR_UNSUPPORTED_ENCODING;
+ return(NULL);
+ }
} else {
xmlFatalErrMsgStr(ctxt, XML_ERR_UNSUPPORTED_ENCODING,
"Unsupported encoding %s\n", encoding);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]