mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-10-24 13:33:01 +03:00
tree: Restore return value of xmlNodeListGetString with NULL list
When passing a NULL list to xmlNodeListGetString or xmlNodeListGetRawString, return NULL instead of "" to match the old behavior. Fixes #783.
This commit is contained in:
20
fuzz/api.c
20
fuzz/api.c
@@ -2521,30 +2521,38 @@ LLVMFuzzerTestOneInput(const char *data, size_t size) {
|
||||
}
|
||||
|
||||
case OP_XML_NODE_LIST_GET_STRING: {
|
||||
xmlDocPtr doc;
|
||||
xmlNodePtr list;
|
||||
xmlChar *string;
|
||||
|
||||
startOp("xmlNodeListGetString");
|
||||
incStrIdx();
|
||||
doc = getDoc(0);
|
||||
list = getNode(1);
|
||||
string = xmlNodeListGetString(
|
||||
getDoc(0),
|
||||
getNode(1),
|
||||
doc,
|
||||
list,
|
||||
getInt(0));
|
||||
oomReport = (string == NULL);
|
||||
oomReport = (list != NULL && string == NULL);
|
||||
moveStr(0, string);
|
||||
endOp();
|
||||
break;
|
||||
}
|
||||
|
||||
case OP_XML_NODE_LIST_GET_RAW_STRING: {
|
||||
xmlDocPtr doc;
|
||||
xmlNodePtr list;
|
||||
xmlChar *string;
|
||||
|
||||
startOp("xmlNodeListGetRawString");
|
||||
incStrIdx();
|
||||
doc = getDoc(0);
|
||||
list = getNode(1);
|
||||
string = xmlNodeListGetRawString(
|
||||
getDoc(0),
|
||||
getNode(1),
|
||||
doc,
|
||||
list,
|
||||
getInt(0));
|
||||
oomReport = (string == NULL);
|
||||
oomReport = (list != NULL && string == NULL);
|
||||
moveStr(0, string);
|
||||
endOp();
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user