diff --git a/libraries/SD/src/sd_diskio.cpp b/libraries/SD/src/sd_diskio.cpp index 497e27d326c..40d6ede9f81 100644 --- a/libraries/SD/src/sd_diskio.cpp +++ b/libraries/SD/src/sd_diskio.cpp @@ -671,8 +671,10 @@ uint8_t sdcard_uninit(uint8_t pdrv) { if (pdrv >= FF_VOLUMES || card == NULL) { return 1; } - AcquireSPI lock(card); - sdTransaction(pdrv, GO_IDLE_STATE, 0, NULL); + { + AcquireSPI lock(card); + sdTransaction(pdrv, GO_IDLE_STATE, 0, NULL); + } // lock is destructed here ff_diskio_register(pdrv, NULL); s_cards[pdrv] = NULL; esp_err_t err = ESP_OK;