mirror of
https://gitlab.gnome.org/GNOME/libxslt
synced 2025-08-08 21:42:07 +03:00
exslt: Fix EXSLT functions without parameters
Fix regression from commit 7364666b
on platforms where malloc(0) returns
NULL.
Should fix #100.
This commit is contained in:
@@ -385,13 +385,15 @@ exsltFuncFunctionFunction (xmlXPathParserContextPtr ctxt, int nargs) {
|
||||
newBase = tctxt->varsNr;
|
||||
/* If there are any parameters */
|
||||
if (paramNode != NULL) {
|
||||
args = (xmlXPathObjectPtr *) xmlMalloc(sizeof(*args) * nargs);
|
||||
if (args == NULL)
|
||||
goto error;
|
||||
/* Fetch the stored argument values from the caller */
|
||||
for (i = nargs - 1; i >= 0; i--) {
|
||||
args[i] = valuePop(ctxt);
|
||||
}
|
||||
if (nargs > 0) {
|
||||
args = (xmlXPathObjectPtr *) xmlMalloc(sizeof(*args) * nargs);
|
||||
if (args == NULL)
|
||||
goto error;
|
||||
/* Fetch the stored argument values from the caller */
|
||||
for (i = nargs - 1; i >= 0; i--) {
|
||||
args[i] = valuePop(ctxt);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Prepare to process params in reverse order. First, go to
|
||||
|
Reference in New Issue
Block a user