Fix checking if CUE already analysed.

Issue #2
This commit is contained in:
CDrummond 2022-05-28 17:24:09 +01:00
parent df17032377
commit fa87a7e135
3 changed files with 13 additions and 7 deletions

2
Cargo.lock generated
View File

@ -113,7 +113,7 @@ dependencies = [
[[package]]
name = "bliss-analyser"
version = "0.2.0"
version = "0.2.1"
dependencies = [
"anyhow",
"argparse",

View File

@ -1,6 +1,7 @@
0.2.1
-----
1. Update version of tag reader library.
2. Fix checking if CUE already analysed.
0.2.0
-----

View File

@ -58,14 +58,19 @@ fn check_dir_entry(db: &mut db::Db, mpath: &Path, entry: DirEntry, track_paths:
cue_file.set_extension("cue");
if cue_file.exists() {
// For cue files, check if first track is in DB
let mut track_path = pb.clone();
let mut cue_track_path = pb.clone();
let ext = pb.extension().unwrap().to_string_lossy();
track_path.set_extension(format!("{}{}1", ext, db::CUE_MARKER));
let db_track = String::from(track_path.to_string_lossy());
if let Ok(id) = db.get_rowid(&db_track) {
if id<=0 {
track_paths.push(String::from(cue_file.to_string_lossy()));
cue_track_path.set_extension(format!("{}{}1", ext, db::CUE_MARKER));
match cue_track_path.strip_prefix(mpath) {
Ok(cue_track_stripped) => {
let cue_track_sname = String::from(cue_track_stripped.to_string_lossy());
if let Ok(id) = db.get_rowid(&cue_track_sname) {
if id<=0 {
track_paths.push(String::from(cue_file.to_string_lossy()));
}
}
}
Err(_) => { }
}
} else {
if let Ok(id) = db.get_rowid(&sname) {