diff --git a/musikr/src/main/cpp/JVMMetadataBuilder.cpp b/musikr/src/main/cpp/JVMMetadataBuilder.cpp index ca6a9b006..b8a857c9e 100644 --- a/musikr/src/main/cpp/JVMMetadataBuilder.cpp +++ b/musikr/src/main/cpp/JVMMetadataBuilder.cpp @@ -35,11 +35,14 @@ void JVMMetadataBuilder::setMimeType(const std::string_view type) { void JVMMetadataBuilder::setId3v2(const TagLib::ID3v2::Tag &tag) { for (auto frame : tag.frameList()) { + if (frame == nullptr) + continue; if (auto txxxFrame = dynamic_cast(frame)) { TagLib::String id = frame->frameID(); TagLib::StringList frameText = txxxFrame->fieldList(); - // Frame text starts with the description then the remaining values + if (frameText.isEmpty()) + continue; auto begin = frameText.begin(); TagLib::String description = *begin; frameText.erase(begin);