[svn:parrot] r49373 - in trunk: include/parrot src/gc
plobsing at svn.parrot.org
plobsing at svn.parrot.org
Wed Sep 29 00:45:34 UTC 2010
Author: plobsing
Date: Wed Sep 29 00:42:18 2010
New Revision: 49373
URL: https://trac.parrot.org/parrot/changeset/49373
Log:
calloc can return null
rtfm: malloc(3)
Modified:
trunk/include/parrot/memory.h
trunk/src/gc/alloc_memory.c
trunk/src/gc/gc_inf.c
trunk/src/gc/gc_ms.c
trunk/src/gc/gc_ms2.c
Modified: trunk/include/parrot/memory.h
==============================================================================
--- trunk/include/parrot/memory.h Tue Sep 28 23:18:03 2010 (r49372)
+++ trunk/include/parrot/memory.h Wed Sep 29 00:42:18 2010 (r49373)
@@ -81,7 +81,7 @@
PARROT_EXPORT
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
void * mem_sys_allocate_zeroed(size_t size);
PARROT_EXPORT
@@ -89,7 +89,7 @@
PARROT_EXPORT
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
void * mem_sys_realloc(ARGFREE(void *from), size_t size);
PARROT_EXPORT
Modified: trunk/src/gc/alloc_memory.c
==============================================================================
--- trunk/src/gc/alloc_memory.c Tue Sep 28 23:18:03 2010 (r49372)
+++ trunk/src/gc/alloc_memory.c Wed Sep 29 00:42:18 2010 (r49373)
@@ -75,7 +75,7 @@
PARROT_EXPORT
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
void *
mem_sys_allocate_zeroed(size_t size)
{
@@ -84,7 +84,7 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
@@ -103,7 +103,7 @@
PARROT_EXPORT
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
void *
mem_sys_realloc(ARGFREE(void *from), size_t size)
{
@@ -119,7 +119,7 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
Modified: trunk/src/gc/gc_inf.c
==============================================================================
--- trunk/src/gc/gc_inf.c Tue Sep 28 23:18:03 2010 (r49372)
+++ trunk/src/gc/gc_inf.c Wed Sep 29 00:42:18 2010 (r49373)
@@ -61,7 +61,7 @@
static void * gc_inf_allocate_memory_chunk(SHIM_INTERP, size_t size);
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void * gc_inf_allocate_memory_chunk_zeroed(SHIM_INTERP, size_t size);
PARROT_MALLOC
@@ -112,7 +112,7 @@
FUNC_MODIFIES(*buffer);
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void * gc_inf_reallocate_memory_chunk(SHIM_INTERP,
ARGFREE(void *from),
size_t size);
@@ -524,7 +524,7 @@
}
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void *
gc_inf_reallocate_memory_chunk(SHIM_INTERP, ARGFREE(void *from), size_t size)
{
@@ -540,13 +540,13 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void *
gc_inf_allocate_memory_chunk_zeroed(SHIM_INTERP, size_t size)
{
@@ -555,7 +555,7 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
Modified: trunk/src/gc/gc_ms.c
==============================================================================
--- trunk/src/gc/gc_ms.c Tue Sep 28 23:18:03 2010 (r49372)
+++ trunk/src/gc/gc_ms.c Wed Sep 29 00:42:18 2010 (r49373)
@@ -73,7 +73,7 @@
static void * gc_ms_allocate_memory_chunk(SHIM_INTERP, size_t size);
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void * gc_ms_allocate_memory_chunk_zeroed(SHIM_INTERP, size_t size);
PARROT_CANNOT_RETURN_NULL
@@ -192,7 +192,7 @@
FUNC_MODIFIES(*pool);
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void * gc_ms_reallocate_memory_chunk(SHIM_INTERP,
ARGFREE(void *from),
size_t size);
@@ -1351,7 +1351,7 @@
}
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void *
gc_ms_reallocate_memory_chunk(SHIM_INTERP, ARGFREE(void *from), size_t size)
{
@@ -1367,13 +1367,13 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void *
gc_ms_allocate_memory_chunk_zeroed(SHIM_INTERP, size_t size)
{
@@ -1382,7 +1382,7 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
Modified: trunk/src/gc/gc_ms2.c
==============================================================================
--- trunk/src/gc/gc_ms2.c Tue Sep 28 23:18:03 2010 (r49372)
+++ trunk/src/gc/gc_ms2.c Wed Sep 29 00:42:18 2010 (r49373)
@@ -84,7 +84,7 @@
static void * gc_ms2_allocate_memory_chunk(SHIM_INTERP, size_t size);
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void * gc_ms2_allocate_memory_chunk_zeroed(SHIM_INTERP, size_t size);
PARROT_MALLOC
@@ -211,7 +211,7 @@
__attribute__nonnull__(2);
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void * gc_ms2_reallocate_memory_chunk(SHIM_INTERP,
ARGFREE(void *from),
size_t size);
@@ -1264,7 +1264,7 @@
}
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void *
gc_ms2_reallocate_memory_chunk(SHIM_INTERP, ARGFREE(void *from), size_t size)
{
@@ -1280,13 +1280,13 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
+PARROT_CAN_RETURN_NULL
static void *
gc_ms2_allocate_memory_chunk_zeroed(SHIM_INTERP, size_t size)
{
@@ -1295,7 +1295,7 @@
#ifdef DETAIL_MEMORY_DEBUG
fprintf(stderr, "Allocated %i at %p\n", size, ptr);
#endif
- if (!ptr)
+ if (!ptr && size)
PANIC_OUT_OF_MEM(size);
return ptr;
}
More information about the parrot-commits
mailing list