From 2a33998710b7b2d8e5dd2e7bee9c10c220aaab6a Mon Sep 17 00:00:00 2001 From: Fred Gleason Date: Fri, 23 Sep 2022 15:23:04 -0400 Subject: [PATCH] 2022-09-23 Fred Gleason * Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied. Signed-off-by: Fred Gleason --- ChangeLog | 3 +++ lib/rdwavedata_dialog.cpp | 4 ++-- rdlibrary/disk_ripper.cpp | 7 ++++--- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0a719b20..5e673b5a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -23370,3 +23370,6 @@ * Updated the DTD declaration in 'xdg/rivendell-rivendell.menu' to conform to the FreeDesktop specfication at https://specifications.freedesktop.org/menu-spec/0.92/ar01s04.html. +2022-09-23 Fred Gleason + * Fixed a regression in the Disc Ripper in rdlibrary(1) that caused + manual changes to track metadata to be incorrectly applied. diff --git a/lib/rdwavedata_dialog.cpp b/lib/rdwavedata_dialog.cpp index 247eec48..4ab718bd 100644 --- a/lib/rdwavedata_dialog.cpp +++ b/lib/rdwavedata_dialog.cpp @@ -261,13 +261,13 @@ void RDWaveDataDialog::okData() wave_data->setConductor(wave_conductor_edit->text()); wave_data->setUserDefined(wave_userdef_edit->text()); - done(0); + done(true); } void RDWaveDataDialog::cancelData() { - done(-1); + done(false); } diff --git a/rdlibrary/disk_ripper.cpp b/rdlibrary/disk_ripper.cpp index a97ef2d0..85e255ba 100644 --- a/rdlibrary/disk_ripper.cpp +++ b/rdlibrary/disk_ripper.cpp @@ -683,9 +683,10 @@ void DiskRipper::modifyCartLabelData() if(rows.size()!=1) { return; } - if(rip_wavedata_dialog->exec(rip_wave_datas[rows.first().row()])==0) { + int real_row=rip_wave_datas.size()-rows.first().row()-1; + if(rip_wavedata_dialog->exec(rip_wave_datas[real_row])) { rip_track_model-> - setTrackTitle(rows.first(),rip_wave_datas[rows.first().row()]->title()); + setTrackTitle(rows.first(),rip_wave_datas[real_row]->title()); } } @@ -1056,7 +1057,7 @@ void DiskRipper::RipTrack(int track,int end_track,QString cutname,QString title) &audio_conv_err))) { case RDAudioImport::ErrorOk: cart->setMetadata(rip_wave_datas[rip_wave_datas.size()-track]); - cut->setDescription(rip_wave_datas[track-1]->title()); + cut->setDescription(rip_wave_datas[rip_wave_datas.size()-track]->title()); cut->setIsrc(rip_disc_record.isrc(rip_track_number-1)); cut->setRecordingMbId(rip_disc_record.trackRecordingMbId(rip_track_number-1)); cut->setReleaseMbId(rip_disc_record.discReleaseMbId());