more memory related code cleanups. Daniel
* HTMLparser.c parser.c relaxng.c xmlschemas.c: more memory related
code cleanups.
Daniel
diff --git a/relaxng.c b/relaxng.c
index 29cdb19..8eb81ec 100644
--- a/relaxng.c
+++ b/relaxng.c
@@ -3964,14 +3964,17 @@
return (NULL);
}
} else if (max <= len) {
+ xmlRelaxNGDefinePtr *temp;
+
max *= 2;
- ret =
- xmlRealloc(ret,
+ temp = xmlRealloc(ret,
(max + 1) * sizeof(xmlRelaxNGDefinePtr));
- if (ret == NULL) {
+ if (temp == NULL) {
xmlRngPErrMemory(ctxt, "getting element list\n");
+ xmlFree(ret);
return (NULL);
}
+ ret = temp;
}
ret[len++] = cur;
ret[len] = NULL;