summaryrefslogtreecommitdiff
path: root/dbg_mlc.c
diff options
context:
space:
mode:
Diffstat (limited to 'dbg_mlc.c')
-rw-r--r--dbg_mlc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/dbg_mlc.c b/dbg_mlc.c
index 724d9cff..4edeeefd 100644
--- a/dbg_mlc.c
+++ b/dbg_mlc.c
@@ -760,7 +760,8 @@ GC_API GC_ATTR_MALLOC char * GC_CALL GC_debug_strndup(const char *str,
# endif
return NULL;
}
- BCOPY(str, copy, len);
+ if (len > 0)
+ BCOPY(str, copy, len);
copy[len] = '\0';
return copy;
}
@@ -973,7 +974,8 @@ GC_API void * GC_CALL GC_debug_realloc(void * p, size_t lb, GC_EXTRA_PARAMS)
# else
old_sz = ((oh *)base) -> oh_sz;
# endif
- BCOPY(p, result, old_sz < lb ? old_sz : lb);
+ if (old_sz > 0)
+ BCOPY(p, result, old_sz < lb ? old_sz : lb);
GC_debug_free(p);
}
return(result);