Index: /branches/1.0/mem.c
===================================================================
--- /branches/1.0/mem.c	(revision 149)
+++ /branches/1.0/mem.c	(revision 150)
@@ -251,5 +251,5 @@
 {
 	void *newp = xc_mem_malloc(mem, size);
-	if (p) {
+	if (p && newp) {
 		memcpy(newp, p, size);
 		xc_mem_free(mem, p);
Index: /trunk/mem.c
===================================================================
--- /trunk/mem.c	(revision 149)
+++ /trunk/mem.c	(revision 150)
@@ -255,5 +255,5 @@
 {
 	void *newp = xc_mem_malloc(mem, size);
-	if (p) {
+	if (p && newp) {
 		memcpy(newp, p, size);
 		xc_mem_free(mem, p);
