diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/dcp_examiner.cc | 4 | ||||
| -rw-r--r-- | src/lib/dcp_subtitle_content.cc | 8 | ||||
| -rw-r--r-- | src/wx/verify_dcp_dialog.cc | 6 |
3 files changed, 12 insertions, 6 deletions
diff --git a/src/lib/dcp_examiner.cc b/src/lib/dcp_examiner.cc index af9e38873..6f02f3ae5 100644 --- a/src/lib/dcp_examiner.cc +++ b/src/lib/dcp_examiner.cc @@ -203,8 +203,8 @@ DCPExaminer::DCPExaminer (shared_ptr<const DCPContent> content, bool tolerant) _text_count[TextType::OPEN_SUBTITLE] = 1; _open_subtitle_language = try_to_parse_language (i->main_subtitle()->language()); - for (auto const& font: i->main_subtitle()->asset()->font_data()) { - reel_fonts.push_back(make_shared<dcpomatic::Font>(font.first, font.second)); + for (auto const& font: i->main_subtitle()->asset()->fonts()) { + reel_fonts.push_back(make_shared<dcpomatic::Font>(font.load_id, font.data)); } } diff --git a/src/lib/dcp_subtitle_content.cc b/src/lib/dcp_subtitle_content.cc index 8908d34e6..832d9bafd 100644 --- a/src/lib/dcp_subtitle_content.cc +++ b/src/lib/dcp_subtitle_content.cc @@ -74,11 +74,11 @@ DCPSubtitleContent::examine (shared_ptr<const Film> film, shared_ptr<Job> job) sc->fix_empty_font_ids (); - auto font_data = sc->font_data(); + auto fonts = sc->fonts(); for (auto node: sc->load_font_nodes()) { - auto data = font_data.find(node->id); - if (data != font_data.end()) { - only_text()->add_font(make_shared<Font>(node->id, data->second)); + auto font = std::find_if(fonts.begin(), fonts.end(), [node](dcp::SubtitleAsset::Font const& font) { return font.load_id == node->id; }); + if (font != fonts.end()) { + only_text()->add_font(make_shared<Font>(node->id, font->data)); } else { only_text()->add_font(make_shared<Font>(node->id)); } diff --git a/src/wx/verify_dcp_dialog.cc b/src/wx/verify_dcp_dialog.cc index bd36334cd..81f8e2d5f 100644 --- a/src/wx/verify_dcp_dialog.cc +++ b/src/wx/verify_dcp_dialog.cc @@ -383,6 +383,12 @@ VerifyDCPDialog::VerifyDCPDialog (wxWindow* parent, shared_ptr<VerifyDCPJob> job case dcp::VerificationNote::Code::INVALID_MAIN_PICTURE_ACTIVE_AREA: add(i, _("The <MainPictureActiveArea> is either not a multiple of 2, or is bigger than an asset.")); break; + case dcp::VerificationNote::Code::DUPLICATE_ASSET_ID_IN_PKL: + add(i, _("The PKL %n has more than one asset with the same ID")); + break; + case dcp::VerificationNote::Code::DUPLICATE_ASSET_ID_IN_ASSETMAP: + add(i, _("The ASSETMAP %n has more than one asset with the same ID")); + break; } } |
