mirror of
https://github.com/mirror/make.git
synced 2025-01-30 22:30:23 +08:00
[emacs]: Block input around the garbage reclamation.
Include blockinput.h.
This commit is contained in:
parent
bb38b0c253
commit
e3a24fc596
12
alloca.c
12
alloca.c
@ -29,6 +29,10 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef emacs
|
||||||
|
#include "blockinput.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
/* If compiling with GCC 2, this file's not needed. */
|
/* If compiling with GCC 2, this file's not needed. */
|
||||||
#if !defined (__GNUC__) || __GNUC__ < 2
|
#if !defined (__GNUC__) || __GNUC__ < 2
|
||||||
|
|
||||||
@ -176,6 +180,10 @@ alloca (size)
|
|||||||
{
|
{
|
||||||
register header *hp; /* Traverses linked list. */
|
register header *hp; /* Traverses linked list. */
|
||||||
|
|
||||||
|
#ifdef emacs
|
||||||
|
BLOCK_INPUT;
|
||||||
|
#endif
|
||||||
|
|
||||||
for (hp = last_alloca_header; hp != NULL;)
|
for (hp = last_alloca_header; hp != NULL;)
|
||||||
if ((STACK_DIR > 0 && hp->h.deep > depth)
|
if ((STACK_DIR > 0 && hp->h.deep > depth)
|
||||||
|| (STACK_DIR < 0 && hp->h.deep < depth))
|
|| (STACK_DIR < 0 && hp->h.deep < depth))
|
||||||
@ -190,6 +198,10 @@ alloca (size)
|
|||||||
break; /* Rest are not deeper. */
|
break; /* Rest are not deeper. */
|
||||||
|
|
||||||
last_alloca_header = hp; /* -> last valid storage. */
|
last_alloca_header = hp; /* -> last valid storage. */
|
||||||
|
|
||||||
|
#ifdef emacs
|
||||||
|
UNBLOCK_INPUT;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
if (size == 0)
|
if (size == 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user