История изменений
Исправление Iron_Bug, (текущая версия) :
я одного не пойму: зачем тебе эти дефайны для free? ну не освобождай явно память, если не хочешь. игра с дефайнами оправдана только тогда, когда по-другому ну вообще никак. а тут целиком твой код и ты сам себе режиссёр, как я понимаю.
или, если твой код будет GNU-совместимым, то почему бы просто не перегрузить функции, используя динамическую линковку стандартных вызовов. что-то вроде
void *malloc(size_t size)
{
void *(*libc_malloc)(size_t) = dlsym(RTLD_NEXT, "malloc");
void *ptr = libc_malloc(size);
return ptr;
}
Исправление Iron_Bug, :
я одного не пойму: зачем тебе эти дефайны для free? ну не освобождай явно память, если не хочешь. игра с дефайнами оправдана только тогда, когда по-другому ну вообще никак. а тут целиком твой код и ты сам себе режиссёр, как я понимаю.
или, если твой код будет GNU-совместимым, то почему бы просто не перегрузить функции, используя динамическую линковку стандартных вариантов. что-то вроде
void *malloc(size_t size)
{
void *(*libc_malloc)(size_t) = dlsym(RTLD_NEXT, "malloc");
void *ptr = libc_malloc(size);
return ptr;
}
Исправление Iron_Bug, :
я одного не пойму: зачем тебе эти дефайны для free? ну не освобождай явно память, если не хочешь. игра с дефайнами оправдана только тогда, когда по-другому ну вообще никак. а тут целиком твой код и ты сам себе режиссёр, как я понимаю.
или, если твой код будет GNU-совместимым, то почему бы просто не перегрузить функции, используя динамическую загрузку стандартных вариантов. что-то вроде
void *malloc(size_t size)
{
void *(*libc_malloc)(size_t) = dlsym(RTLD_NEXT, "malloc");
void *ptr = libc_malloc(size);
return ptr;
}
Исходная версия Iron_Bug, :
я одного не пойму: зачем тебе эти дефайны для free? ну не освобождай явно память, если не хочешь. игра с дефайнами оправдана только тогда, когда по-другому ну вообще никак. а тут целиком твой код и ты сам себе режиссёр, как я понимаю.
или, если твой код будет GNU-совместимый, то почему бы просто не перегрузить функции, используя динамическую загрузку стандартных вариантов. что-то вроде
void *malloc(size_t size)
{
void *(*libc_malloc)(size_t) = dlsym(RTLD_NEXT, "malloc");
void *ptr = libc_malloc(size);
return ptr;
}