| 584 | } |
| 585 | |
| 586 | static void tag_write(TagLib::ID3v2::Tag *tag, const ScanResult &result, const Config &config) |
| 587 | { |
| 588 | const RGTagsArray &RG_STRING = config.lowercase ? RG_STRING_LOWER : RG_STRING_UPPER; |
| 589 | write_rg_tags(result, |
| 590 | config, |
| 591 | [&](RGTag rg_tag, const TagLib::String &value) { |
| 592 | auto frame = new TagLib::ID3v2::UserTextIdentificationFrame(); |
| 593 | frame->setDescription(RG_STRING[static_cast<size_t>(rg_tag)]); |
| 594 | frame->setText(value); |
| 595 | tag->addFrame(frame); |
| 596 | } |
| 597 | ); |
| 598 | } |
| 599 | |
| 600 | template<typename T> |
| 601 | static void tag_clear(TagLib::Ogg::XiphComment *tag) |