mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-07-29 11:41:22 +03:00
Someone found a bug hiding in a corner, caught it !
- parser.c: fixing bug 52299 strange condition leading to a parser crash due to a buffer overflow - result/noent/attrib.xml result/attrib.xml test/attrib.xml: added the specific test case Daniel
This commit is contained in:
6
parser.c
6
parser.c
@ -2156,6 +2156,9 @@ xmlParseAttValue(xmlParserCtxtPtr ctxt) {
|
||||
buf[len++] = *current++;
|
||||
}
|
||||
} else {
|
||||
if (len > buf_size - 10) {
|
||||
growBuffer(buf);
|
||||
}
|
||||
len += xmlCopyChar(0, &buf[len], val);
|
||||
}
|
||||
} else {
|
||||
@ -2178,6 +2181,9 @@ xmlParseAttValue(xmlParserCtxtPtr ctxt) {
|
||||
xmlFree(rep);
|
||||
}
|
||||
} else {
|
||||
if (len > buf_size - 10) {
|
||||
growBuffer(buf);
|
||||
}
|
||||
if (ent->content != NULL)
|
||||
buf[len++] = ent->content[0];
|
||||
}
|
||||
|
Reference in New Issue
Block a user