Пример #1
0
void *realloc_db (void *ptr, uint32_t size)
{
    if (ptr && size)
        return add_ptr (realloc (del_ptr (ptr), size));
    else if (size)
        return malloc_db (size);
    else
        free_db (ptr);

    return NULL;
}
Пример #2
0
void __ckd_free__(void *ptr, char *file, int line)
{
#if defined(MEM_DEBUG)
    if (!del_ptr(ptr)) {
        E_WARN("%p not in allocated ptr list for call %s(%d)\n",
               ptr, file, line);
    }
    printf ("ckd_free from %s(%d): %08x\n",
            file, line, ptr);
    fflush (stdout);
#endif

    if (debug)
        myfree(ptr);
    else
        free(ptr);
}
Пример #3
0
void *__ckd_realloc__(void *ptr, size_t new_size,
                      char *caller_file, int caller_line)
{
    void *mem;

#if defined(MEM_DEBUG)
    del_ptr(ptr);
#endif

    mem = debug ? myrealloc(ptr, new_size) : realloc(ptr, new_size);
    if (mem == NULL) {
        E_FATAL("realloc(%d) failed from %s(%d)\n", new_size,
                caller_file, caller_line);
    }

#if defined(MEM_DEBUG)
    add_ptr(mem, caller_file, caller_line);
    printf ("ckd_realloc from %s(%d): %08x %d = %08x\n",
            caller_file, caller_line, ptr, new_size, mem);
    fflush (stdout);
#endif

    return mem;
}
Пример #4
0
void free_db (void *ptr)
{
    if (ptr)
        free (del_ptr (ptr));
}