dlsym()
デフォルトのライブラリ malloc の代わりに、自分のバージョンの malloc を呼び出していました。
lt_malloc = (void*(*)(size_t))dlsym(RTLD_NEXT, "malloc");
TRACE((stderr, "initialize: lt_malloc=%p\n", lt_malloc));
if (!lt_malloc) {
fprintf(stderr, "LeakTracer: could not resolve 'malloc' in 'libc.so': %s\n", dlerror());
exit(1);
}
一定時間後、タイマーかそこらかもしれませんが、元のバージョンのmalloc(libcライブラリmalloc)に戻したいと思います。どうやってやるの?
前もって感謝します。