diff --git a/os/lib/src/chmemheaps.c b/os/lib/src/chmemheaps.c index 2646f2929..a03bde2e7 100644 --- a/os/lib/src/chmemheaps.c +++ b/os/lib/src/chmemheaps.c @@ -266,7 +266,7 @@ void *chHeapAllocAligned(memory_heap_t *heapp, size_t size, unsigned align) { /* More memory is required, tries to get it from the associated provider else fails.*/ if (heapp->provider != NULL) { - ahp = heapp->provider((pages + 1U) * CH_HEAP_ALIGNMENT, + ahp = heapp->provider(pages * CH_HEAP_ALIGNMENT, align, sizeof (heap_header_t)); if (ahp != NULL) { diff --git a/readme.txt b/readme.txt index b55221ff6..36b3c34ff 100644 --- a/readme.txt +++ b/readme.txt @@ -138,6 +138,7 @@ - EX: Updated LIS302DL to 1.1.0 (backported to 18.2.1). - EX: Updated LPS25H to 1.1.0 (backported to 18.2.1). - EX: Updated LSM303DLHC to 1.1.0 (backported to 18.2.1). +- LIB: Fixed heap allocation issue (bug #955)(backported to 18.2.2 and 17.6.5). - HAL: Fixed win32 simulator HAL broken because a typo (bug #954)(backported to 18.2.2). - HAL: Fixed race condition in STM32 ADCv3 driver (bug #953)(backported to