From 98e203294d6a78190d045ab0d0dda27f346fcb74 Mon Sep 17 00:00:00 2001 From: PavelSindler Date: Wed, 25 Oct 2017 16:30:55 +0200 Subject: [PATCH 1/2] removing SD during sorting fixed --- Firmware/cardreader.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Firmware/cardreader.cpp b/Firmware/cardreader.cpp index ba031be1a..0ab77f1d3 100644 --- a/Firmware/cardreader.cpp +++ b/Firmware/cardreader.cpp @@ -909,6 +909,8 @@ void CardReader::presort() { #endif for (uint16_t i = fileCnt; --i;) { + if (!IS_SD_INSERTED) return; + bool didSwap = false; #if !SDSORT_USES_RAM //show progresss bar only if slow sorting method is used int8_t percent = (counter * 100) / total;//((counter * 100) / pow((fileCnt-1),2)); @@ -920,6 +922,7 @@ void CardReader::presort() { //MYSERIAL.println(int(i)); for (uint16_t j = 0; j < i; ++j) { + if (!IS_SD_INSERTED) return; manage_heater(); const uint16_t o1 = sort_order[j], o2 = sort_order[j + 1]; From 7968d1b3cb731becf4fe0c7d44fa815569d50e33 Mon Sep 17 00:00:00 2001 From: PavelSindler Date: Wed, 25 Oct 2017 16:57:26 +0200 Subject: [PATCH 2/2] initi sort order loop --- Firmware/cardreader.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Firmware/cardreader.cpp b/Firmware/cardreader.cpp index 0ab77f1d3..be9c38ecd 100644 --- a/Firmware/cardreader.cpp +++ b/Firmware/cardreader.cpp @@ -834,6 +834,7 @@ void CardReader::presort() { if (fileCnt > 1) { // Init sort order. for (uint16_t i = 0; i < fileCnt; i++) { + if (!IS_SD_INSERTED) return; manage_heater(); sort_order[i] = i;