aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/github/daneren2005/dsub/service/OfflineMusicService.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/github/daneren2005/dsub/service/OfflineMusicService.java b/src/github/daneren2005/dsub/service/OfflineMusicService.java
index 22b12cde..a676d9a1 100644
--- a/src/github/daneren2005/dsub/service/OfflineMusicService.java
+++ b/src/github/daneren2005/dsub/service/OfflineMusicService.java
@@ -428,12 +428,20 @@ public class OfflineMusicService implements MusicService {
if(!"#EXTM3U".equals(line)) return playlist;
while( (line = buffer.readLine()) != null ){
+ // No matter what, end file can't have .complete in it
+ line = line.replace(".complete", "");
File entryFile = new File(line);
- if(!entryFile.exists()) {
- entryFile = new File(line.replace(".complete", ""));
+
+ // Don't add file to playlist if it doesn't exist as cached or pinned!
+ File checkFile = entryFile;
+ if(!checkFile.exists()) {
+ // If normal file doens't exist, check if .complete version does
+ checkFile = new File(entryFile.getParent(), FileUtil.getBaseName(entryFile.getName())
+ + ".complete" + FileUtil.getExtension(entryFile.getName()));
}
+
String entryName = getName(entryFile);
- if(entryFile.exists() && entryName != null){
+ if(checkFile.exists() && entryName != null){
playlist.addChild(createEntry(context, entryFile, entryName, false));
}
}