summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniël van de Giessen <daniel@dvdgiessen.nl>2024-03-11 17:32:13 +0100
committerDamien George <damien@micropython.org>2024-03-25 12:19:00 +1100
commita0efe2d368456ec35c32d439d121cf8d7557bbd0 (patch)
tree13198b65783fedf26edf07ee1a7190b940a88010
parent35f3f0a87db2580041dd0f7dfd4361df48887796 (diff)
esp32/main: Check if main GC heap allocation failed.
If the heap allocation fails we will crash if we continue, so at least we can show a clear error message so one can figure out memory allocation was the problem (instead of just seeing some arbitrary null pointer error later). Signed-off-by: Daniël van de Giessen <daniel@dvdgiessen.nl>
-rw-r--r--ports/esp32/main.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ports/esp32/main.c b/ports/esp32/main.c
index 6fb15d3cc..62dd7ae3c 100644
--- a/ports/esp32/main.c
+++ b/ports/esp32/main.c
@@ -116,6 +116,10 @@ void mp_task(void *pvParameter) {
}
void *mp_task_heap = MP_PLAT_ALLOC_HEAP(MICROPY_GC_INITIAL_HEAP_SIZE);
+ if (mp_task_heap == NULL) {
+ printf("mp_task_heap allocation failed!\n");
+ esp_restart();
+ }
soft_reset:
// initialise the stack pointer for the main thread