summaryrefslogtreecommitdiff
path: root/libguile/gc-segment.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/gc-segment.c')
-rw-r--r--libguile/gc-segment.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/libguile/gc-segment.c b/libguile/gc-segment.c
index 593aa29a2..46054fc53 100644
--- a/libguile/gc-segment.c
+++ b/libguile/gc-segment.c
@@ -512,21 +512,14 @@ scm_i_get_new_heap_segment (scm_t_cell_type_statistics *freelist, policy_on_erro
freelist->collected = LONG_MAX;
}
- if (len > scm_max_segment_size)
- len = scm_max_segment_size;
+ if (len > SCM_MIN_HEAP_SEG_SIZE)
+ len = SCM_MIN_HEAP_SEG_SIZE;
{
- size_t smallest;
scm_t_heap_segment * seg = scm_i_make_empty_heap_segment (freelist);
-
- smallest = 1024 * 10; /* UGH. */
-
- if (len < smallest)
- len = smallest;
/* Allocate with decaying ambition. */
- while ((len >= SCM_MIN_HEAP_SEG_SIZE)
- && (len >= smallest))
+ while (len >= SCM_MIN_HEAP_SEG_SIZE)
{
if (scm_i_initialize_heap_segment_data (seg, len))
{