diff options
Diffstat (limited to 'dev-libs/libxml2/files/libxml2-2.9.2-overflow-conditional-sections-1.patch')
-rw-r--r-- | dev-libs/libxml2/files/libxml2-2.9.2-overflow-conditional-sections-1.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/dev-libs/libxml2/files/libxml2-2.9.2-overflow-conditional-sections-1.patch b/dev-libs/libxml2/files/libxml2-2.9.2-overflow-conditional-sections-1.patch new file mode 100644 index 000000000000..bb0766a559dc --- /dev/null +++ b/dev-libs/libxml2/files/libxml2-2.9.2-overflow-conditional-sections-1.patch @@ -0,0 +1,32 @@ +From bd0526e66a56e75a18da8c15c4750db8f801c52d Mon Sep 17 00:00:00 2001 +From: Daniel Veillard <veillard@redhat.com> +Date: Fri, 23 Oct 2015 19:02:28 +0800 +Subject: Another variation of overflow in Conditional sections + +Which happen after the previous fix to +https://bugzilla.gnome.org/show_bug.cgi?id=756456 + +But stopping the parser and exiting we didn't pop the intermediary entities +and doing the SKIP there applies on an input which may be too small +--- + parser.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/parser.c b/parser.c +index a65e4cc..b9217ff 100644 +--- a/parser.c ++++ b/parser.c +@@ -6915,7 +6915,9 @@ xmlParseConditionalSections(xmlParserCtxtPtr ctxt) { + "All markup of the conditional section is not in the same entity\n", + NULL, NULL); + } +- SKIP(3); ++ if ((ctxt-> instate != XML_PARSER_EOF) && ++ ((ctxt->input->cur + 3) < ctxt->input->end)) ++ SKIP(3); + } + } + +-- +cgit v0.11.2 + |