aboutsummaryrefslogtreecommitdiff
path: root/src/app.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/app.rs')
-rwxr-xr-xsrc/app.rs25
1 files changed, 17 insertions, 8 deletions
diff --git a/src/app.rs b/src/app.rs
index 07cf9a7..6344799 100755
--- a/src/app.rs
+++ b/src/app.rs
@@ -117,10 +117,14 @@ impl App {
let songs = self.conn.conn.listfiles(&file).unwrap_or_default();
for (t, f) in songs.iter() {
if t == "file" {
- if let Some(full_path) = &self.conn.get_full_path(f) {
- let song = self.conn.get_song_with_only_filename(full_path);
- self.conn.conn.push(&song)?;
- }
+ let path = self.browser.prev_path.to_string()
+ + "/"
+ + self.browser.path.as_str()
+ + "/"
+ + f;
+ let full_path = path.strip_prefix("./").unwrap_or_else(|| "");
+ let song = self.conn.get_song_with_only_filename(full_path);
+ self.conn.conn.push(&song)?;
}
}
} else if content_type == "file" {
@@ -134,10 +138,15 @@ impl App {
}
if !status {
- if let Some(full_path) = &self.conn.get_full_path(content) {
- let song = self.conn.get_song_with_only_filename(full_path);
- self.conn.conn.push(&song)?;
- }
+ let path = self.browser.prev_path.to_string()
+ + "/"
+ + self.browser.path.as_str()
+ + "/"
+ + content;
+ let full_path = path.strip_prefix("./").unwrap_or_else(|| "");
+
+ let song = self.conn.get_song_with_only_filename(full_path);
+ self.conn.conn.push(&song)?;
}
}