aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog3
-rw-r--r--src/alloc.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 432cea6a624..6a353aa1f95 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -14,6 +14,9 @@
14 These were 'int' variables that could overflow on 64-bit hosts; 14 These were 'int' variables that could overflow on 64-bit hosts;
15 they were never used, so remove them instead of repairing them. 15 they were never used, so remove them instead of repairing them.
16 (nzombies, ngcs, max_live, max_zombies): Now EMACS_INT, not 'int'. 16 (nzombies, ngcs, max_live, max_zombies): Now EMACS_INT, not 'int'.
17 (inhibit_garbage_collection): Set gc_cons_threshold to max value.
18 Previously, this ceilinged at INT_MAX, but that doesn't work on
19 64-bit machines.
17 20
18 * alloc.c (Fmake_bool_vector): Don't assume vector size fits in int. 21 * alloc.c (Fmake_bool_vector): Don't assume vector size fits in int.
19 (allocate_vectorlike): Check for ptrdiff_t overflow. 22 (allocate_vectorlike): Check for ptrdiff_t overflow.
diff --git a/src/alloc.c b/src/alloc.c
index dd2e5f4b6ad..e04f60baf03 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -4827,9 +4827,8 @@ int
4827inhibit_garbage_collection (void) 4827inhibit_garbage_collection (void)
4828{ 4828{
4829 int count = SPECPDL_INDEX (); 4829 int count = SPECPDL_INDEX ();
4830 int nbits = min (VALBITS, BITS_PER_INT);
4831 4830
4832 specbind (Qgc_cons_threshold, make_number (((EMACS_INT) 1 << (nbits - 1)) - 1)); 4831 specbind (Qgc_cons_threshold, make_number (MOST_POSITIVE_FIXNUM));
4833 return count; 4832 return count;
4834} 4833}
4835 4834