mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-12 18:55:13 -08:00
* alloc.c (memory_full) [SYSTEM_MALLOC]: Port to MacO).
Fixes: debbugs:8800
This commit is contained in:
parent
e71564921e
commit
4d09bcf621
2 changed files with 17 additions and 6 deletions
|
|
@ -1,3 +1,11 @@
|
|||
2011-06-06 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
* alloc.c (memory_full) [SYSTEM_MALLOC]: Port to MacOS (Bug#8800).
|
||||
Do not assume that spare memory exists; that assumption is valid
|
||||
only if SYSTEM_MALLOC.
|
||||
(LARGE_REQUEST): New macro, so that the issue of large requests
|
||||
is separated from the issue of spare memory.
|
||||
|
||||
2011-06-05 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
* editfns.c (Fformat): Correctly handle zero flag with hexadecimal
|
||||
|
|
|
|||
15
src/alloc.c
15
src/alloc.c
|
|
@ -196,6 +196,12 @@ static char *spare_memory[7];
|
|||
#define SPARE_MEMORY (1 << 14)
|
||||
#endif
|
||||
|
||||
#ifdef SYSTEM_MALLOC
|
||||
# define LARGE_REQUEST (1 << 14)
|
||||
#else
|
||||
# define LARGE_REQUEST SPARE_MEMORY
|
||||
#endif
|
||||
|
||||
/* Number of extra blocks malloc should get when it needs more core. */
|
||||
|
||||
static int malloc_hysteresis;
|
||||
|
|
@ -3283,15 +3289,12 @@ memory_full (size_t nbytes)
|
|||
{
|
||||
/* Do not go into hysterics merely because a large request failed. */
|
||||
int enough_free_memory = 0;
|
||||
if (SPARE_MEMORY < nbytes)
|
||||
if (LARGE_REQUEST < nbytes)
|
||||
{
|
||||
void *p = malloc (SPARE_MEMORY);
|
||||
void *p = malloc (LARGE_REQUEST);
|
||||
if (p)
|
||||
{
|
||||
if (spare_memory[0])
|
||||
free (p);
|
||||
else
|
||||
spare_memory[0] = p;
|
||||
free (p);
|
||||
enough_free_memory = 1;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue