set page->block_size before call to _mi_segment_page_start() for alignment calculation

This commit is contained in:
kickunderscore 2019-07-01 23:28:28 +02:00 committed by GitHub
parent 5dfced26c2
commit b22aeb86b6
WARNING! Although there is a key with this ID in the database it does not verify this commit! This commit is SUSPICIOUS.
GPG key ID: 4AEE18F83AFDEB23

View file

@ -516,9 +516,9 @@ static void mi_page_init(mi_heap_t* heap, mi_page_t* page, size_t block_size, mi
mi_assert(segment != NULL); mi_assert(segment != NULL);
// set fields // set fields
size_t page_size; size_t page_size;
_mi_segment_page_start(segment, page, &page_size);
page->block_size = block_size;
mi_assert_internal(block_size>0); mi_assert_internal(block_size>0);
page->block_size = block_size;
_mi_segment_page_start(segment, page, &page_size);
mi_assert_internal(page_size / block_size < (1L<<16)); mi_assert_internal(page_size / block_size < (1L<<16));
page->reserved = (uint16_t)(page_size / block_size); page->reserved = (uint16_t)(page_size / block_size);
page->cookie = _mi_heap_random(heap) | 1; page->cookie = _mi_heap_random(heap) | 1;