Commit 5f0de2d1 authored by Arnaud Blanchard's avatar Arnaud Blanchard
Browse files

Allow secure_realloc of size 0. Free the pointer in this case

parent 4f33f242
......@@ -137,8 +137,8 @@ void *secure_malloc(const char *file, const char *function, int line, size_t siz
//Fait un realloc de taille 'size' sur le pointeur verifie qu'il n'a pas renvoye NULL et renvoie la nouvelle addresse du pointeur. Si le pointeur d'origine est NULL alors la fonction a le meme effet que secure_malloc. Si le realloc a renvoiye NULL alors une erreur fatal est generee avec le filename, name_of_function, et line comme parametres.
void secure_realloc(const char *file, const char *function, int line, void** pointer, size_t size)
{
SYSTEM_ERROR_CHECK(*pointer = realloc(*pointer, size), NULL, "size: '%lu'", size);
if (*pointer == NULL) fatal_error(file, function, line, "realloc of size '%lu' has failed (return NULL)", size);
if (size==0) FREE(*pointer);
else SYSTEM_ERROR_CHECK(*pointer = realloc(*pointer, size), NULL, "size: '%lu'", size);
}
void *append_allocation(const char *file, const char *function, int line, void** pointer, size_t pointer_content_size, int *items_nb, size_t item_size)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment