mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
1999-09-24 Andreas Jaeger <aj@suse.de> * stdio-common/tst-printf.c (main): Add a testcase for large precision. Reported by Tymm Twillman <tymm@coe.missouri.edu>. 1999-09-24 Andreas Schwab <schwab@suse.de> * math/bits/mathcalls.h: Fix last change. Also declare __finite. 1999-09-24 Andreas Jaeger <aj@suse.de> * intl/finddomain.c (_nl_find_domain): Fix memory leak: Free normalized_codeset. Reported by Belicky Zsolt <zsolt@prolan.hu>. 1999-09-23 Mark Kettenis <kettenis@gnu.org> * sysdeps/unix/sysv/linux/Makefile [malloc] (CFLAGS-malloc.c): New variable. Define MORECORE_CLEARS to 2. * malloc/malloc.c (cALLOc): Correctly handle systems where sbrk doesn't clear the contents of memory that is reallocated after decrementing the break value first. Update comment about MORECORE_CLEARS, explaining the meaning of the values it can be set to.
This commit is contained in:
@ -226,8 +226,12 @@
|
||||
MORECORE_FAILURE (default: -1)
|
||||
The value returned upon failure of MORECORE.
|
||||
MORECORE_CLEARS (default 1)
|
||||
True (1) if the routine mapped to MORECORE zeroes out memory (which
|
||||
holds for sbrk).
|
||||
The degree to which the routine mapped to MORECORE zeroes out
|
||||
memory: never (0), only for newly allocated space (1) or always
|
||||
(2). The distinction between (1) and (2) is necessary because on
|
||||
some systems, if the application first decrements and then
|
||||
increments the break value, the contents of the reallocated space
|
||||
are unspecified.
|
||||
DEFAULT_TRIM_THRESHOLD
|
||||
DEFAULT_TOP_PAD
|
||||
DEFAULT_MMAP_THRESHOLD
|
||||
@ -861,11 +865,15 @@ Void_t *(*__morecore)() = __default_morecore;
|
||||
|
||||
#endif
|
||||
|
||||
static size_t __libc_pagesize;
|
||||
|
||||
#define MORECORE (*__morecore)
|
||||
#define MORECORE_FAILURE 0
|
||||
|
||||
#ifndef MORECORE_CLEARS
|
||||
#define MORECORE_CLEARS 1
|
||||
#endif
|
||||
|
||||
static size_t __libc_pagesize;
|
||||
|
||||
#define mmap __mmap
|
||||
#define munmap __munmap
|
||||
#define mremap __mremap
|
||||
@ -3596,10 +3604,16 @@ Void_t* cALLOc(n, elem_size) size_t n; size_t elem_size;
|
||||
if(!ar_ptr)
|
||||
return 0;
|
||||
|
||||
/* check if expand_top called, in which case don't need to clear */
|
||||
/* Check if expand_top called, in which case there may be
|
||||
no need to clear. */
|
||||
#if MORECORE_CLEARS
|
||||
oldtop = top(ar_ptr);
|
||||
oldtopsize = chunksize(top(ar_ptr));
|
||||
#if MORECORE_CLEARS < 2
|
||||
/* Only newly allocated memory is guaranteed to be cleared. */
|
||||
if (oldtopsize < sbrk_base + max_sbrked_mem - (char *)oldtop)
|
||||
oldtopsize = (sbrk_base + max_sbrked_mem - (char *)oldtop);
|
||||
#endif
|
||||
#endif
|
||||
p = chunk_alloc (ar_ptr, sz);
|
||||
|
||||
|
Reference in New Issue
Block a user