diff --git a/headphones/importer.py b/headphones/importer.py index 0a5171c0..c3c6720d 100644 --- a/headphones/importer.py +++ b/headphones/importer.py @@ -272,7 +272,7 @@ def addReleaseById(rid): #we don't want to make more calls to MB here unless we have to, could be happening quite a lot #TODO: why do I have to str() this here? I don't get it. - rg_exists = myDB.select("SELECT * from albums WHERE AlbumID=?", [rid]) + rg_exists = myDB.select("SELECT * from albums WHERE AlbumID=?", [rgid]) #make sure the artist exists since I don't know what happens later if it doesn't artist_exists = myDB.select("SELECT * from artists WHERE ArtistID=?", [release_dict['artist_id']]) diff --git a/headphones/postprocessor.py b/headphones/postprocessor.py index 72c22f9d..e97d46b1 100644 --- a/headphones/postprocessor.py +++ b/headphones/postprocessor.py @@ -101,7 +101,7 @@ def verify(albumid, albumpath): myDB.upsert("tracks", newValueDict, controlValueDict) - controlValueDict = {"ArtistID": albumid} + controlValueDict = {"ArtistID": release_dict['artist_id']} newValueDict = {"Status": "Paused"} myDB.upsert("artists", newValueDict, controlValueDict) @@ -164,7 +164,11 @@ def verify(albumid, albumpath): logger.warn('Could not identify album: %s. It may not be the intended album.' % albumpath) myDB.action('UPDATE snatched SET status = "Unprocessed" WHERE AlbumID=?', [albumid]) - renameUnprocessedFolder(albumpath) + processed = re.search(r' \(Unprocessed\)(?:\[\d+\])?', albumpath) + if not processed: + renameUnprocessedFolder(albumpath) + else: + logger.info("Already marked as unprocessed: " + albumpath) def doPostProcessing(albumid, albumpath, release, tracks, downloaded_track_list):