diff --git a/source/ngc/dvd.cpp b/source/ngc/dvd.cpp index ea16042..e4a28c1 100644 --- a/source/ngc/dvd.cpp +++ b/source/ngc/dvd.cpp @@ -220,8 +220,6 @@ int dvd_safe_read(void *dst_v, u32 len, u64 offset) ret |= dvd_buffered_read(buffer, DVD_MAX_READ_LENGTH, currentOffset); // read 32 byte from the dvd memcpy(&dst[bufferOffset], buffer, bytesToRead); // copy bytes to output buffer } - - //free(tmp); return ret; } } @@ -534,7 +532,10 @@ bool SwitchDVDFolder(char * dir, int maxDepth) { dvddir = filelist[dirindex].offset; dvddirlength = filelist[dirindex].length; - maxfiles = ParseDVDdirectory(); + selection = dirindex; + + if(filelist[dirindex].flags) // only parse directories + maxfiles = ParseDVDdirectory(); if(lastdir) return true;