summaryrefslogtreecommitdiff
path: root/libc/malloc_hooks/malloc_hooks.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libc/malloc_hooks/malloc_hooks.cpp')
-rw-r--r--libc/malloc_hooks/malloc_hooks.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/libc/malloc_hooks/malloc_hooks.cpp b/libc/malloc_hooks/malloc_hooks.cpp
index 662520c15..715a6295b 100644
--- a/libc/malloc_hooks/malloc_hooks.cpp
+++ b/libc/malloc_hooks/malloc_hooks.cpp
@@ -69,6 +69,7 @@ int hooks_iterate(uintptr_t base, size_t size,
void (*callback)(uintptr_t base, size_t size, void* arg), void* arg);
void hooks_malloc_disable();
void hooks_malloc_enable();
+bool hooks_write_malloc_leak_info(FILE*);
#if defined(HAVE_DEPRECATED_MALLOC_FUNCS)
void* hooks_pvalloc(size_t bytes);
@@ -175,7 +176,7 @@ int hooks_mallopt(int param, int value) {
void* hooks_aligned_alloc(size_t alignment, size_t size) {
if (__memalign_hook != nullptr && __memalign_hook != default_memalign_hook) {
- if (!powerof2(alignment)) {
+ if (!powerof2(alignment) || (size % alignment) != 0) {
errno = EINVAL;
return nullptr;
}
@@ -216,6 +217,10 @@ ssize_t hooks_malloc_backtrace(void*, uintptr_t*, size_t) {
return 0;
}
+bool hooks_write_malloc_leak_info(FILE*) {
+ return true;
+}
+
#if defined(HAVE_DEPRECATED_MALLOC_FUNCS)
void* hooks_pvalloc(size_t bytes) {
size_t pagesize = getpagesize();