mirror of
https://github.com/rvtr/GodMode9i.git
synced 2025-11-02 00:11:07 -04:00
Show ".." on drive root
This commit is contained in:
parent
5693e1e7b0
commit
325538c29b
@ -72,6 +72,7 @@ bool dirEntryPredicate (const DirEntry& lhs, const DirEntry& rhs) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void getDirectoryContents (vector<DirEntry>& dirContents) {
|
void getDirectoryContents (vector<DirEntry>& dirContents) {
|
||||||
|
bool twoDotsMade = false;
|
||||||
struct stat st;
|
struct stat st;
|
||||||
|
|
||||||
dirContents.clear();
|
dirContents.clear();
|
||||||
@ -87,24 +88,34 @@ void getDirectoryContents (vector<DirEntry>& dirContents) {
|
|||||||
|
|
||||||
struct dirent* pent = readdir(pdir);
|
struct dirent* pent = readdir(pdir);
|
||||||
if(pent == NULL) break;
|
if(pent == NULL) break;
|
||||||
|
|
||||||
stat(pent->d_name, &st);
|
stat(pent->d_name, &st);
|
||||||
dirEntry.name = pent->d_name;
|
if (!twoDotsMade) {
|
||||||
dirEntry.isDirectory = (st.st_mode & S_IFDIR) ? true : false;
|
if (strcmp(pent->d_name, "..") != 0) {
|
||||||
if((dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "nds")
|
dirEntry.name = "..";
|
||||||
|| (dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "NDS")
|
dirEntry.isDirectory = true;
|
||||||
|| (dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "argv")
|
dirEntry.isApp = false;
|
||||||
|| (dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "ARGV")
|
dirContents.push_back (dirEntry); // List ".."
|
||||||
|| (isDSiMode() && is3DS && sdMounted && dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "firm")
|
}
|
||||||
|| (isDSiMode() && is3DS && sdMounted && dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "FIRM"))
|
twoDotsMade = true;
|
||||||
{
|
} else if (strcmp(pent->d_name, "..") != 0) {
|
||||||
dirEntry.isApp = true;
|
dirEntry.name = pent->d_name;
|
||||||
} else {
|
dirEntry.isDirectory = (st.st_mode & S_IFDIR) ? true : false;
|
||||||
dirEntry.isApp = false;
|
if((dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "nds")
|
||||||
}
|
|| (dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "NDS")
|
||||||
|
|| (dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "argv")
|
||||||
if (dirEntry.name.compare(".") != 0 && (dirEntry.isDirectory || nameEndsWith(dirEntry.name))) {
|
|| (dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "ARGV")
|
||||||
dirContents.push_back (dirEntry);
|
|| (isDSiMode() && is3DS && sdMounted && dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "firm")
|
||||||
|
|| (isDSiMode() && is3DS && sdMounted && dirEntry.name.substr(dirEntry.name.find_last_of(".") + 1) == "FIRM"))
|
||||||
|
{
|
||||||
|
dirEntry.isApp = true;
|
||||||
|
} else {
|
||||||
|
dirEntry.isApp = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dirEntry.name.compare(".") != 0 && (dirEntry.isDirectory || nameEndsWith(dirEntry.name))) {
|
||||||
|
dirContents.push_back (dirEntry);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -75,7 +75,7 @@ int main(int argc, char **argv) {
|
|||||||
|
|
||||||
bool yHeld = false;
|
bool yHeld = false;
|
||||||
|
|
||||||
snprintf(titleName, sizeof(titleName), "GodMode9i v%i.%i.%i", 1, 2, 1);
|
snprintf(titleName, sizeof(titleName), "GodMode9i v%i.%i.%i", 1, 3, 0);
|
||||||
|
|
||||||
// initialize video mode
|
// initialize video mode
|
||||||
videoSetMode(MODE_4_2D);
|
videoSetMode(MODE_4_2D);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user