From 0d60b456af446dd597169b5fe1abb953a9becefc Mon Sep 17 00:00:00 2001 From: SG Date: Wed, 16 Nov 2022 10:47:43 +1000 Subject: [PATCH] Crash when malloc in IRQ, not ISR --- firmware/targets/f7/furi_hal/furi_hal_memory.c | 2 +- furi/core/memmgr_heap.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/firmware/targets/f7/furi_hal/furi_hal_memory.c b/firmware/targets/f7/furi_hal/furi_hal_memory.c index 016108a00..ec71e6660 100644 --- a/firmware/targets/f7/furi_hal/furi_hal_memory.c +++ b/firmware/targets/f7/furi_hal/furi_hal_memory.c @@ -81,7 +81,7 @@ void furi_hal_memory_init() { } void* furi_hal_memory_alloc(size_t size) { - if(FURI_IS_ISR()) { + if(FURI_IS_IRQ_MODE()) { furi_crash("memmgt in ISR"); } diff --git a/furi/core/memmgr_heap.c b/furi/core/memmgr_heap.c index 5ccabaefb..01153fe57 100644 --- a/furi/core/memmgr_heap.c +++ b/furi/core/memmgr_heap.c @@ -340,7 +340,7 @@ void* pvPortMalloc(size_t xWantedSize) { void* pvReturn = NULL; size_t to_wipe = xWantedSize; - if(FURI_IS_ISR()) { + if(FURI_IS_IRQ_MODE()) { furi_crash("memmgt in ISR"); } @@ -490,7 +490,7 @@ void vPortFree(void* pv) { uint8_t* puc = (uint8_t*)pv; BlockLink_t* pxLink; - if(FURI_IS_ISR()) { + if(FURI_IS_IRQ_MODE()) { furi_crash("memmgt in ISR"); }