From bf1fc5a2a0f408a8d8a54d4329257a10d077c4fb Mon Sep 17 00:00:00 2001 From: jacqueline Date: Thu, 5 Oct 2023 14:23:48 +1100 Subject: Guard audio pipeline file accesses --- src/audio/fatfs_audio_input.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/audio/fatfs_audio_input.cpp') diff --git a/src/audio/fatfs_audio_input.cpp b/src/audio/fatfs_audio_input.cpp index 54630a98..3cd75606 100644 --- a/src/audio/fatfs_audio_input.cpp +++ b/src/audio/fatfs_audio_input.cpp @@ -32,6 +32,7 @@ #include "event_queue.hpp" #include "fatfs_source.hpp" #include "future_fetcher.hpp" +#include "spi.hpp" #include "tag_parser.hpp" #include "tasks.hpp" #include "track.hpp" @@ -127,7 +128,13 @@ auto FatfsAudioInput::OpenFile(const std::pmr::string& path) -> bool { } std::unique_ptr file = std::make_unique(); - FRESULT res = f_open(file.get(), path.c_str(), FA_READ); + FRESULT res; + + { + auto lock = drivers::acquire_spi(); + res = f_open(file.get(), path.c_str(), FA_READ); + } + if (res != FR_OK) { ESP_LOGE(kTag, "failed to open file! res: %i", res); return false; -- cgit v1.2.3