diff --git a/repos/base/src/lib/base/allocator_avl.cc b/repos/base/src/lib/base/allocator_avl.cc index 4c5b411390..8b487c1a9f 100644 --- a/repos/base/src/lib/base/allocator_avl.cc +++ b/repos/base/src/lib/base/allocator_avl.cc @@ -401,6 +401,9 @@ size_t Allocator_avl_base::size_at(void const *addr) const /* lookup corresponding block */ Block *b = _find_by_address(reinterpret_cast(addr)); + if (b && (b->addr() != (addr_t)addr)) + return 0; + return (b && b->used()) ? b->size() : 0; }