From eb04ac87ccfa046dd342ca7b9e6478c3bdcabbba Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 11 Feb 2024 20:13:04 +0100 Subject: [PATCH] Don't add a font with an empty ID for ccaps either (#2762). Previously this was all changed so that for subs we add the default font in a cleaner way (in db22f81ccce9e1a5f205e6d8b3c0631fc039a173). I can't see why we shouldn't treat ccaps the same way, and indeed not doing it causes an error as shown by the included test. --- src/lib/dcp_examiner.cc | 3 --- test/data | 2 +- test/subtitle_font_id_test.cc | 11 +++++++++++ 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/lib/dcp_examiner.cc b/src/lib/dcp_examiner.cc index d9c904720..72eb82860 100644 --- a/src/lib/dcp_examiner.cc +++ b/src/lib/dcp_examiner.cc @@ -237,9 +237,6 @@ DCPExaminer::DCPExaminer (shared_ptr content, bool tolerant) for (auto const& font: asset->font_data()) { _fonts.push_back({reel_index, asset->id(), make_shared(font.first, font.second)}); } - if (asset->font_data().empty()) { - _fonts.push_back({reel_index, asset->id(), make_shared("")}); - } } } diff --git a/test/data b/test/data index 704f76433..4cb08962b 160000 --- a/test/data +++ b/test/data @@ -1 +1 @@ -Subproject commit 704f7643393caa29d77ddba138bff3642b273c46 +Subproject commit 4cb08962ba07e99c442cb12091c0347d84d8fd89 diff --git a/test/subtitle_font_id_test.cc b/test/subtitle_font_id_test.cc index 9575868a1..bc09a9cf1 100644 --- a/test/subtitle_font_id_test.cc +++ b/test/subtitle_font_id_test.cc @@ -23,6 +23,7 @@ #include "lib/dcp_content.h" #include "lib/film.h" #include "lib/font.h" +#include "lib/player.h" #include "lib/text_content.h" #include "lib/util.h" #include @@ -291,3 +292,13 @@ BOOST_AUTO_TEST_CASE(use_first_loadfont_as_default) BOOST_REQUIRE_EQUAL(subtitle->font_data().size(), 1U); BOOST_CHECK(subtitle->font_data().begin()->second == dcp::ArrayData("test/data/Inconsolata-VF.ttf")); } + + +BOOST_AUTO_TEST_CASE(no_error_with_ccap_that_mentions_no_font) +{ + auto dcp = make_shared("test/data/ccap_only"); + auto film = new_test_film2("no_error_with_ccap_that_mentions_no_font", { dcp }); + auto player = Player(film, film->playlist()); + while (!player.pass()) {} +} + -- 2.30.2