From c90fade565eeffaff51cc240c30e05f6e1f6e196 Mon Sep 17 00:00:00 2001 From: Ian Beckwith Date: Sun, 31 Oct 2010 02:49:32 +0000 Subject: [PATCH] fixed delete_all --- bin/id3fs-tag | 13 ++++++++----- lib/ID3FS/AudioFile/Mp3.pm | 3 ++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/bin/id3fs-tag b/bin/id3fs-tag index 037dc78..42650c3 100755 --- a/bin/id3fs-tag +++ b/bin/id3fs-tag @@ -89,18 +89,21 @@ sub do_deletes $file->delete_year() if($delete_year); $file->delete_v1genre() if($delete_v1genre); $file->delete_comment() if($delete_comment); - $file->delete_all() if($delete_all); $file->delete_genre() if($delete_genre); $file->delete_tags($delete_tags) if($delete_tags); if(@replace_tags && $replace_tags[0]) { $file->delete_tags($replace_tags[0]); } + $file->delete_all() if($delete_all); + + # we don't want to save the tag if we've deleted it + return 0 if($delete_all); - my $donesomething=($delete_artist || $delete_album || $delete_track || - $delete_tracknum || $delete_year || $delete_v1genre || - $delete_comment || $delete_all || $delete_genre || - $delete_tags || (@replace_tags && $replace_tags[0])); + my $donesomething=($delete_artist || $delete_album || $delete_track || + $delete_tracknum || $delete_year || $delete_v1genre || + $delete_comment || $delete_genre || $delete_tags || + (@replace_tags && $replace_tags[0])); return($donesomething ? 1 : 0); } diff --git a/lib/ID3FS/AudioFile/Mp3.pm b/lib/ID3FS/AudioFile/Mp3.pm index d8f1355..d51e0b0 100644 --- a/lib/ID3FS/AudioFile/Mp3.pm +++ b/lib/ID3FS/AudioFile/Mp3.pm @@ -184,7 +184,7 @@ sub delete { my($self, $thing)=@_; - if(exists($self->{mp3}->{ID3v1})) + if(exists($self->{mp3}->{ID3v1}) && $thing ne "genre") { my $action=$thing; $action="genre" if($action eq "v1genre"); @@ -200,6 +200,7 @@ sub delete if(exists($self->{mp3}->{ID3v2})) { + print "2: remove: $thing\n"; if($thing eq "artist") { $self->{mp3}->{ID3v2}->remove_frame("TPE1"); -- 2.11.0