From cb3b95de194d34f3c9a43392dadf0f2a421a4612 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Wed, 18 Mar 2009 15:12:56 +0000 Subject: Add some asserts to try to catch bug 930 svn:r19074 --- src/common/memarea.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/common/memarea.c b/src/common/memarea.c index b99ced135..65e36e3dd 100644 --- a/src/common/memarea.c +++ b/src/common/memarea.c @@ -31,6 +31,7 @@ realign_pointer(void *ptr) { uintptr_t x = (uintptr_t)ptr; x = (x+MEMAREA_ALIGN_MASK) & ~MEMAREA_ALIGN_MASK; + tor_assert(((void*)x) >= ptr); // XXXX021 remove this once bug 930 is solved return (void*)x; } @@ -84,6 +85,8 @@ alloc_chunk(size_t sz, int freelist_ok) res->next_chunk = NULL; res->mem_size = chunk_size - CHUNK_HEADER_SIZE; res->next_mem = res->u.mem; + tor_assert(res->next_mem+res->mem_size == ((char*)res)+chunk_size); + tor_assert(realign_pointer(res->next_mem) == res->next_mem); return res; } } @@ -196,6 +199,9 @@ memarea_alloc(memarea_t *area, size_t sz) } result = chunk->next_mem; chunk->next_mem = realign_pointer(chunk->next_mem + sz); + // XXXX021 remove these once bug 930 is solved. + tor_assert(chunk->next_mem >= chunk->u.mem); + tor_assert(chunk->next_mem <= chunk->u.mem+chunk->mem_size); return result; } -- cgit v1.2.3