delete old track_genre and album_genre tags while scanning

This commit is contained in:
sentriz
2020-12-30 20:59:31 +00:00
parent 8492561d2b
commit a37993e24f
3 changed files with 15 additions and 1 deletions

View File

@@ -459,6 +459,13 @@ func (s *Scanner) handleTrack(it *item) error {
if err := s.trTx.Save(track).Error; err != nil {
return fmt.Errorf("writing track table: %w", err)
}
err = s.trTx.
Where("track_id=?", track.ID).
Delete(db.TrackGenre{}).
Error
if err != nil {
return fmt.Errorf("delete old track genre records: %w", err)
}
err = s.trTx.InsertBulkLeftMany(
"track_genres",
[]string{"track_id", "genre_id"},
@@ -476,6 +483,13 @@ func (s *Scanner) handleTrack(it *item) error {
// the folder hasn't been modified or already has it's tags
return nil
}
err = s.trTx.
Where("album_id=?", folder.ID).
Delete(db.AlbumGenre{}).
Error
if err != nil {
return fmt.Errorf("delete old album genre records: %w", err)
}
err = s.trTx.InsertBulkLeftMany(
"album_genres",
[]string{"album_id", "genre_id"},