summaryrefslogtreecommitdiff
path: root/Build/source/texk/dvipdfmx/src/mem.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/dvipdfmx/src/mem.c')
-rw-r--r--Build/source/texk/dvipdfmx/src/mem.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/Build/source/texk/dvipdfmx/src/mem.c b/Build/source/texk/dvipdfmx/src/mem.c
index 97e46cdd0d9..a5435cee40d 100644
--- a/Build/source/texk/dvipdfmx/src/mem.c
+++ b/Build/source/texk/dvipdfmx/src/mem.c
@@ -1,4 +1,4 @@
-/* $Header: /home/cvsroot/dvipdfmx/src/mem.c,v 1.5 2007/11/17 18:08:58 matthias Exp $
+/* $Header: /home/cvsroot/dvipdfmx/src/mem.c,v 1.6 2008/11/03 22:49:29 matthias Exp $
This is dvipdfmx, an eXtended version of dvipdfm by Mark A. Wicks.
@@ -169,10 +169,15 @@ void *new (size_t size)
void *renew (void *mem, size_t size)
{
- void *result = realloc (mem, size);
- if (!result) {
- ERROR("Out of memory - asked for %lu bytes\n", (unsigned long) size);
+ if (size) {
+ void *result = realloc (mem, size);
+ if (!result) {
+ ERROR("Out of memory - asked for %lu bytes\n", (unsigned long) size);
+ }
+ return result;
+ } else {
+ /* realloc may not return NULL if size == 0 */
+ free(mem);
+ return NULL;
}
-
- return result;
}