A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Interface revolution: do not try to survive to malloc failure
[simgrid.git]
/
src
/
xbt
/
sysdep.c
diff --git
a/src/xbt/sysdep.c
b/src/xbt/sysdep.c
index
2ac0871
..
2575bf9
100644
(file)
--- a/
src/xbt/sysdep.c
+++ b/
src/xbt/sysdep.c
@@
-21,10
+21,14
@@
GRAS_LOG_NEW_DEFAULT_SUBCATEGORY(sysdep, gros, "System dependency");
****/
void* gras_malloc (long int bytes) {
****/
void* gras_malloc (long int bytes) {
- return bytes == 0 ? NULL : (void*) malloc ((size_t) bytes);
+ void *ptr = (bytes == 0 ? NULL : (void*) malloc ((size_t) bytes));
+ gras_assert1(ptr, "Malloc of %ld bytes failed",bytes);
+ return ptr;
}
void* gras_malloc0 (long int bytes) {
}
void* gras_malloc0 (long int bytes) {
- return bytes == 0 ? NULL : (void*) calloc ((size_t) bytes, 1);
+ void *ptr = (bytes == 0 ? NULL : (void*) calloc ((size_t) bytes, 1));
+ gras_assert1(ptr, "Malloc of %ld bytes failed",bytes);
+ return ptr;
}
void* gras_realloc (void *memory, long int bytes) {
}
void* gras_realloc (void *memory, long int bytes) {
@@
-32,14
+36,20
@@
void* gras_realloc (void *memory, long int bytes) {
gras_free(memory);
return NULL;
} else {
gras_free(memory);
return NULL;
} else {
- return (void*) realloc (memory, (size_t) bytes);
+ void *ptr = (void*) realloc (memory, (size_t) bytes);
+ gras_assert1(ptr, "Realloc of %ld bytes failed",bytes);
+ return ptr;
}
}
}
}
+char* gras_strdup (const char* str) {
+ char *ret = (char*)strdup(str);
+ gras_assert0(ret, "String duplication failed");
+ return ret;
+}
void gras_free (void *memory) {
void gras_free (void *memory) {
- if (memory) {
- free (memory);
- }
+ if (memory)
+ free (memory);
}
/****
}
/****