git://git.exim.org
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
receive flow processing
[exim.git]
/
src
/
src
/
store.c
diff --git
a/src/src/store.c
b/src/src/store.c
index 790f79ddbca7d7883ac0ef493b5717a47cd00824..88b1fd88f8c78d3c7ec6ab2d5e993878c8f5a789 100644
(file)
--- a/
src/src/store.c
+++ b/
src/src/store.c
@@
-2,7
+2,7
@@
* Exim - an Internet mail transport agent *
*************************************************/
* Exim - an Internet mail transport agent *
*************************************************/
-/* Copyright (c) University of Cambridge 1995 - 201
2
*/
+/* Copyright (c) University of Cambridge 1995 - 201
6
*/
/* See the file NOTICE for conditions of use and distribution. */
/* Exim gets and frees all its store through these functions. In the original
/* See the file NOTICE for conditions of use and distribution. */
/* Exim gets and frees all its store through these functions. In the original
@@
-177,7
+177,7
@@
if (size > yield_length[store_pool])
yield_length[store_pool] = newblock->length;
next_yield[store_pool] =
(void *)((char *)current_block[store_pool] + ALIGNED_SIZEOF_STOREBLOCK);
yield_length[store_pool] = newblock->length;
next_yield[store_pool] =
(void *)((char *)current_block[store_pool] + ALIGNED_SIZEOF_STOREBLOCK);
- VALGRIND_MAKE_MEM_NOACCESS(next_yield[store_pool], yield_length[store_pool]);
+
(void)
VALGRIND_MAKE_MEM_NOACCESS(next_yield[store_pool], yield_length[store_pool]);
}
/* There's (now) enough room in the current block; the yield is the next
}
/* There's (now) enough room in the current block; the yield is the next
@@
-202,7
+202,7
@@
DEBUG(D_memory)
}
#endif /* COMPILE_UTILITY */
}
#endif /* COMPILE_UTILITY */
-VALGRIND_MAKE_MEM_UNDEFINED(store_last_get[store_pool], size);
+
(void)
VALGRIND_MAKE_MEM_UNDEFINED(store_last_get[store_pool], size);
/* Update next pointer and number of bytes left in the current block. */
next_yield[store_pool] = (void *)((char *)next_yield[store_pool] + size);
/* Update next pointer and number of bytes left in the current block. */
next_yield[store_pool] = (void *)((char *)next_yield[store_pool] + size);
@@
-297,7
+297,7
@@
DEBUG(D_memory)
if (newsize % alignment != 0) newsize += alignment - (newsize % alignment);
next_yield[store_pool] = (char *)ptr + newsize;
yield_length[store_pool] -= newsize - rounded_oldsize;
if (newsize % alignment != 0) newsize += alignment - (newsize % alignment);
next_yield[store_pool] = (char *)ptr + newsize;
yield_length[store_pool] -= newsize - rounded_oldsize;
-VALGRIND_MAKE_MEM_UNDEFINED(ptr + oldsize, inc);
+
(void)
VALGRIND_MAKE_MEM_UNDEFINED(ptr + oldsize, inc);
return TRUE;
}
return TRUE;
}
@@
-354,9
+354,13
@@
the released memory. */
newlength = bc + b->length - (char *)ptr;
#ifndef COMPILE_UTILITY
newlength = bc + b->length - (char *)ptr;
#ifndef COMPILE_UTILITY
-if (running_in_test_harness) memset(ptr, 0xF0, newlength);
+if (running_in_test_harness)
+ {
+ (void) VALGRIND_MAKE_MEM_DEFINED(ptr, newlength);
+ memset(ptr, 0xF0, newlength);
+ }
#endif
#endif
-VALGRIND_MAKE_MEM_NOACCESS(ptr, newlength);
+
(void)
VALGRIND_MAKE_MEM_NOACCESS(ptr, newlength);
yield_length[store_pool] = newlength - (newlength % alignment);
next_yield[store_pool] = (char *)ptr + (newlength % alignment);
current_block[store_pool] = b;
yield_length[store_pool] = newlength - (newlength % alignment);
next_yield[store_pool] = (char *)ptr + (newlength % alignment);
current_block[store_pool] = b;
@@
-370,7
+374,8
@@
if (yield_length[store_pool] < STOREPOOL_MIN_SIZE &&
b->next->length == STORE_BLOCK_SIZE)
{
b = b->next;
b->next->length == STORE_BLOCK_SIZE)
{
b = b->next;
- VALGRIND_MAKE_MEM_NOACCESS((char *)b + ALIGNED_SIZEOF_STOREBLOCK, b->length - ALIGNED_SIZEOF_STOREBLOCK);
+ (void) VALGRIND_MAKE_MEM_NOACCESS((char *)b + ALIGNED_SIZEOF_STOREBLOCK,
+ b->length - ALIGNED_SIZEOF_STOREBLOCK);
}
bb = b->next;
}
bb = b->next;