From 7293532f7da651f569eb5c571deffd32d83d25ab Mon Sep 17 00:00:00 2001 From: xhlsa <126936838+xhlsa@users.noreply.github.com> Date: Sun, 13 Sep 2026 19:36:24 -0700 Subject: [PATCH] flash: guard flashFlush() against a NULL flush callback The M25P16/W25Q (NOR) drivers do not set flashVTable_t.flush, so flashFlush() jumps through NULL and hard-faults on blackbox read or seek on those chips. Also guard against no flash device being detected. Co-Authored-By: Claude Opus 5 --- src/main/drivers/flash.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/drivers/flash.c b/src/main/drivers/flash.c index 392c7680519..6dd51784d0b 100644 --- a/src/main/drivers/flash.c +++ b/src/main/drivers/flash.c @@ -129,7 +129,9 @@ int flashReadBytes(uint32_t address, uint8_t *buffer, int length) void flashFlush(void) { - flash->flush(); + if (flash && flash->flush) { + flash->flush(); + } } const flashGeometry_t *flashGetGeometry(void)