libroot_debug: Merge guarded heap into libroot_debug.
commitf474606ee92a7afddb5b3b6350a97ffd31e22c42
authorMichael Lotz <mmlr@mlotz.ch>
Wed, 12 Aug 2015 18:53:59 +0000 (12 20:53 +0200)
committerMichael Lotz <mmlr@mlotz.ch>
Thu, 13 Aug 2015 20:12:18 +0000 (13 22:12 +0200)
tree90749bd5db37133f9e77cafbefcef7a0dfdfc463
parent749241987723489674e347d8bed25730d43d29a3
libroot_debug: Merge guarded heap into libroot_debug.

The individual debug heap implementations are now exposed via a
structure of function pointers and a common frontend dispatches the
malloc and malloc_debug APIs through them.

The MALLOC_DEBUG environment variable can be used to select the guarded
heap by adding 'g', otherwise the debug heap is used as the default.
Consequently the separate libroot_guarded is not needed anymore and has
been removed.

To allow the use of environment variables this early, init_env_post_heap
has been added and the heap dependent atfork() moved there. This allowed
to fold the code of init_heap_post_env into init_heap so the former has
been removed.
14 files changed:
build/jam/packages/HaikuDevel
headers/private/libroot/libroot_private.h
src/bin/leak_analyser.sh
src/system/libroot/Jamfile
src/system/libroot/libroot_init.c
src/system/libroot/posix/malloc/arch-specific.cpp
src/system/libroot/posix/malloc_debug/Jamfile
src/system/libroot/posix/malloc_debug/guarded_heap.cpp
src/system/libroot/posix/malloc_debug/heap.cpp
src/system/libroot/posix/malloc_debug/malloc_debug_api.cpp [new file with mode: 0644]
src/system/libroot/posix/malloc_debug/malloc_debug_api.h [new file with mode: 0644]
src/system/libroot/posix/stdlib/env.cpp
src/system/libroot/stubbed/libroot_stubs.c
src/system/libroot/stubbed/libroot_stubs_legacy.c