diff options
Diffstat (limited to 'src/idop.c')
-rw-r--r-- | src/idop.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -207,10 +207,14 @@ del_tags(const char *name) while (gl_list_iterator_next(&itr, &p, NULL)) { const struct ed_item *item = p; struct id3_frame *frame; + int i = 0; - while (frame = id3_tag_findframe(tag, item->id, 0)) { - id3_tag_detachframe(tag, frame); - id3_frame_delete(frame); + while (frame = id3_tag_findframe(tag, item->id, i)) { + if (ed_item_matches_frame(item, frame)) { + id3_tag_detachframe(tag, frame); + id3_frame_delete(frame); + } else + i++; } } gl_list_iterator_free(&itr); |