From 5d2b925f3e2f4927a909efb4b97d35e9cad2a440 Mon Sep 17 00:00:00 2001 From: daan Date: Sun, 11 Oct 2020 10:56:57 -0700 Subject: [PATCH] wrap MI_SECURE conditional in #ifdef to avoid warnings (issue #311) --- src/page.c | 9 ++++++--- src/segment.c | 8 +++++--- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/page.c b/src/page.c index cd96bb90..4b7e9ffb 100644 --- a/src/page.c +++ b/src/page.c @@ -705,14 +705,17 @@ static inline mi_page_t* mi_find_free_page(mi_heap_t* heap, size_t size) { mi_page_queue_t* pq = mi_page_queue(heap,size); mi_page_t* page = pq->first; if (page != NULL) { - if ((MI_SECURE >= 3) && page->capacity < page->reserved && ((_mi_heap_random_next(heap) & 1) == 1)) { - // in secure mode, we extend half the time to increase randomness + #if (MI_SECURE>=3) // in secure mode, we extend half the time to increase randomness + if (page->capacity < page->reserved && ((_mi_heap_random_next(heap) & 1) == 1)) { mi_page_extend_free(heap, page, heap->tld); mi_assert_internal(mi_page_immediate_available(page)); } - else { + else + #endif + { _mi_page_free_collect(page,false); } + if (mi_page_immediate_available(page)) { page->retire_expire = 0; return page; // fast path diff --git a/src/segment.c b/src/segment.c index fb47fb0f..4dc7dbf6 100644 --- a/src/segment.c +++ b/src/segment.c @@ -385,11 +385,13 @@ static uint8_t* mi_segment_raw_page_start(const mi_segment_t* segment, const mi_ psize -= segment->segment_info_size; } - if (MI_SECURE > 1 || (MI_SECURE == 1 && page->segment_idx == segment->capacity - 1)) { - // secure == 1: the last page has an os guard page at the end - // secure > 1: every page has an os guard page +#if (MI_SECURE > 1) // every page has an os guard page + psize -= _mi_os_page_size(); +#elif (MI_SECURE==1) // the last page has an os guard page at the end + if (page->segment_idx == segment->capacity - 1) { psize -= _mi_os_page_size(); } +#endif if (page_size != NULL) *page_size = psize; mi_assert_internal(page->xblock_size == 0 || _mi_ptr_page(p) == page);