Fix workDirParents -> getAbsFilename relationship

This commit is contained in:
Scott Lahteine 2016-03-29 03:18:53 -07:00
parent 27d70599d4
commit 0385acea7a
2 changed files with 5 additions and 12 deletions

View file

@ -584,22 +584,15 @@ void CardReader::chdir(const char * relpath) {
SERIAL_ECHOLN(relpath); SERIAL_ECHOLN(relpath);
} }
else { else {
if (workDirDepth < MAX_DIR_DEPTH) { if (workDirDepth < MAX_DIR_DEPTH)
++workDirDepth; workDirParents[workDirDepth++] = *parent;
for (int d = workDirDepth; d--;) workDirParents[d + 1] = workDirParents[d];
workDirParents[0] = *parent;
}
workDir = newfile; workDir = newfile;
} }
} }
void CardReader::updir() { void CardReader::updir() {
if (workDirDepth > 0) { if (workDirDepth > 0)
--workDirDepth; workDir = workDirParents[--workDirDepth];
workDir = workDirParents[0];
for (uint16_t d = 0; d < workDirDepth; d++)
workDirParents[d] = workDirParents[d+1];
}
} }
void CardReader::printingHasFinished() { void CardReader::printingHasFinished() {

View file

@ -79,7 +79,7 @@ public:
int autostart_index; int autostart_index;
private: private:
SdFile root, *curDir, workDir, workDirParents[MAX_DIR_DEPTH]; SdFile root, *curDir, workDir, workDirParents[MAX_DIR_DEPTH];
uint16_t workDirDepth; uint8_t workDirDepth;
Sd2Card card; Sd2Card card;
SdVolume volume; SdVolume volume;
SdFile file; SdFile file;