From c9668c04d275cf5975b3f53d23a0f44f8331fc99 Mon Sep 17 00:00:00 2001 From: krateng Date: Thu, 19 Oct 2023 21:49:29 +0200 Subject: [PATCH] Fixed unneeded album creation --- maloja/database/sqldb.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/maloja/database/sqldb.py b/maloja/database/sqldb.py index 25a8b4e..6704b9a 100644 --- a/maloja/database/sqldb.py +++ b/maloja/database/sqldb.py @@ -439,7 +439,12 @@ def get_track_id(trackdict,create_new=True,update_album=False,dbconn=None): if trackdict.get('album') and create_new: # if we don't supply create_new, it means we just want to get info about a track # which means no need to write album info, even if it was new - add_track_to_album(row.id,get_album_id(trackdict['album'],dbconn=dbconn),replace=update_album,dbconn=dbconn) + # if we havent set update_album, we only want to assign the album in case the track + # has no album yet. this means we also only want to create a potentially new album in that case + album_id = get_album_id(trackdict['album'],create_new=(update_album or not row.album_id),dbconn=dbconn) + add_track_to_album(row.id,album_id,replace=(update_album or not row.album_id),dbconn=dbconn) + + return row.id if not create_new: return None