From 34634d776e4254d1d166d7ff0e3b7d6fa597ee8f Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Mon, 10 Aug 2020 21:27:56 +0200 Subject: [PATCH] Make sure to always use original metadata when editing tags --- src/core/mainwindow.cpp | 12 ++++++------ src/playlist/playlist.cpp | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/core/mainwindow.cpp b/src/core/mainwindow.cpp index 41fd36b9d..126791268 100644 --- a/src/core/mainwindow.cpp +++ b/src/core/mainwindow.cpp @@ -1948,7 +1948,7 @@ void MainWindow::RenumberTracks() { if (!source_index.isValid()) continue; PlaylistItemPtr item = app_->playlist_manager()->current()->item_at(source_index.row()); if (!item) continue; - Song song = item->Metadata(); + Song song = item->OriginalMetadata(); if (song.IsEditable()) { song.set_track(track); TagReaderReply *reply = TagReaderClient::Instance()->SaveFile(song.url().toLocalFile(), song); @@ -1978,7 +1978,7 @@ void MainWindow::SelectionSetValue() { if (!source_index.isValid()) continue; PlaylistItemPtr item = app_->playlist_manager()->current()->item_at(source_index.row()); if (!item) continue; - Song song = item->Metadata(); + Song song = item->OriginalMetadata(); if (!song.is_valid() || !song.url().isLocalFile()) continue; if (Playlist::set_column_value(song, column, column_value)) { TagReaderReply *reply = TagReaderClient::Instance()->SaveFile(song.url().toLocalFile(), song); @@ -2084,7 +2084,7 @@ void MainWindow::ShowInCollection() { if (!source_index.isValid()) continue; PlaylistItemPtr item = app_->playlist_manager()->current()->item_at(source_index.row()); if (item && item->IsLocalCollectionItem()) { - songs << item->Metadata(); + songs << item->OriginalMetadata(); break; } } @@ -2387,7 +2387,7 @@ void MainWindow::PlaylistOrganizeSelected(const bool copy) { if (!source_index.isValid()) continue; PlaylistItemPtr item = app_->playlist_manager()->current()->item_at(source_index.row()); if (!item) continue; - Song song = item->Metadata(); + Song song = item->OriginalMetadata(); if (!song.is_valid() || !song.url().isLocalFile()) continue; songs << song; } @@ -2477,7 +2477,7 @@ void MainWindow::PlaylistCopyToDevice() { if (!source_index.isValid()) continue; PlaylistItemPtr item = app_->playlist_manager()->current()->item_at(source_index.row()); if (!item) continue; - Song song = item->Metadata(); + Song song = item->OriginalMetadata(); if (!song.is_valid() || !song.url().isLocalFile()) continue; songs << song; } @@ -2667,7 +2667,7 @@ void MainWindow::AutoCompleteTags() { if (!source_index.isValid()) continue; PlaylistItemPtr item(app_->playlist_manager()->current()->item_at(source_index.row())); if (!item) continue; - Song song = item->Metadata(); + Song song = item->OriginalMetadata(); if (song.IsEditable()) { songs << song; autocomplete_tag_items_ << item; diff --git a/src/playlist/playlist.cpp b/src/playlist/playlist.cpp index 57a0f9374..f42ae2b54 100644 --- a/src/playlist/playlist.cpp +++ b/src/playlist/playlist.cpp @@ -371,7 +371,7 @@ bool Playlist::setData(const QModelIndex &index, const QVariant &value, int role int row = index.row(); PlaylistItemPtr item = item_at(row); - Song song = item->Metadata(); + Song song = item->OriginalMetadata(); if (index.data() == value) return false;