@@ -928,7 +928,7 @@ void *umm_realloc(void *ptr, size_t size) {
928928
929929 uint16_t c;
930930
931- size_t curSize;
931+ [[maybe_unused]] size_t curSize;
932932
933933 UMM_CHECK_INITIALIZED ();
934934
@@ -1089,7 +1089,8 @@ void *umm_realloc(void *ptr, size_t size) {
10891089 STATS__FREE_BLOCKS_UPDATE (-prevBlockSize);
10901090 STATS__FREE_BLOCKS_ISR_MIN ();
10911091 blockSize += prevBlockSize;
1092- POISON_CHECK_SET_POISON ((void *)&UMM_DATA (c), size); // Fix allocation so ISR poison check is good
1092+ // Fix new allocation such that poison checks from an ISR pass.
1093+ POISON_CHECK_SET_POISON_BLOCKS ((void *)&UMM_DATA (c), blockSize);
10931094 UMM_CRITICAL_SUSPEND (id_realloc);
10941095 UMM_POISON_MEMMOVE ((void *)&UMM_DATA (c), ptr, curSize);
10951096 ptr = (void *)&UMM_DATA (c);
@@ -1111,7 +1112,7 @@ void *umm_realloc(void *ptr, size_t size) {
11111112 #else
11121113 blockSize += (prevBlockSize + nextBlockSize);
11131114 #endif
1114- POISON_CHECK_SET_POISON ((void *)&UMM_DATA (c), size );
1115+ POISON_CHECK_SET_POISON_BLOCKS ((void *)&UMM_DATA (c), blockSize );
11151116 UMM_CRITICAL_SUSPEND (id_realloc);
11161117 UMM_POISON_MEMMOVE ((void *)&UMM_DATA (c), ptr, curSize);
11171118 ptr = (void *)&UMM_DATA (c);
@@ -1123,7 +1124,7 @@ void *umm_realloc(void *ptr, size_t size) {
11231124 void *oldptr = ptr;
11241125 if ((ptr = umm_malloc_core (_context, size))) {
11251126 DBGLOG_DEBUG (" realloc %i to a bigger block %i, copy, and free the old\n " , blockSize, blocks);
1126- POISON_CHECK_SET_POISON (( void *)& UMM_DATA (c) , size);
1127+ ( void ) POISON_CHECK_SET_POISON (ptr , size);
11271128 UMM_CRITICAL_SUSPEND (id_realloc);
11281129 UMM_POISON_MEMCPY (ptr, oldptr, curSize);
11291130 UMM_CRITICAL_RESUME (id_realloc);
@@ -1186,7 +1187,8 @@ void *umm_realloc(void *ptr, size_t size) {
11861187 blockSize = blocks;
11871188 #endif
11881189 }
1189- POISON_CHECK_SET_POISON ((void *)&UMM_DATA (c), size);
1190+ // Fix new allocation such that poison checks from an ISR pass.
1191+ POISON_CHECK_SET_POISON_BLOCKS ((void *)&UMM_DATA (c), blockSize);
11901192 UMM_CRITICAL_SUSPEND (id_realloc);
11911193 UMM_POISON_MEMMOVE ((void *)&UMM_DATA (c), ptr, curSize);
11921194 ptr = (void *)&UMM_DATA (c);
@@ -1204,7 +1206,7 @@ void *umm_realloc(void *ptr, size_t size) {
12041206 void *oldptr = ptr;
12051207 if ((ptr = umm_malloc_core (_context, size))) {
12061208 DBGLOG_DEBUG (" realloc %d to a bigger block %d, copy, and free the old\n " , blockSize, blocks);
1207- POISON_CHECK_SET_POISON (( void *)& UMM_DATA (c) , size);
1209+ ( void ) POISON_CHECK_SET_POISON (ptr , size);
12081210 UMM_CRITICAL_SUSPEND (id_realloc);
12091211 UMM_POISON_MEMCPY (ptr, oldptr, curSize);
12101212 UMM_CRITICAL_RESUME (id_realloc);
@@ -1230,7 +1232,7 @@ void *umm_realloc(void *ptr, size_t size) {
12301232 void *oldptr = ptr;
12311233 if ((ptr = umm_malloc_core (_context, size))) {
12321234 DBGLOG_DEBUG (" realloc %d to a bigger block %d, copy, and free the old\n " , blockSize, blocks);
1233- POISON_CHECK_SET_POISON (( void *)& UMM_DATA (c) , size);
1235+ ( void ) POISON_CHECK_SET_POISON (ptr , size);
12341236 UMM_CRITICAL_SUSPEND (id_realloc);
12351237 UMM_POISON_MEMCPY (ptr, oldptr, curSize);
12361238 UMM_CRITICAL_RESUME (id_realloc);
0 commit comments