From: Carl Hetherington Date: Sat, 3 Sep 2022 20:52:19 +0000 (+0200) Subject: Remove - and + from ratings before using them in a DCNC name. X-Git-Tag: v2.16.24~2 X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=commitdiff_plain;h=259dd8a083b987d2d154b12859cd90f7c8dcb607 Remove - and + from ratings before using them in a DCNC name. I can't find any documentation about what we should do here, but at least this rule fits what https://registry-page.isdcf.com/ratings/ does. --- diff --git a/src/lib/film.cc b/src/lib/film.cc index 37720025b..4e133a90d 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -973,7 +973,10 @@ Film::isdcf_name (bool if_created_now) const if (_ratings.empty ()) { d += "-NR"; } else { - d += "-" + _ratings[0].label; + auto label = _ratings[0].label; + boost::erase_all(label, "+"); + boost::erase_all(label, "-"); + d += "-" + label; } } diff --git a/test/isdcf_name_test.cc b/test/isdcf_name_test.cc index 4d17f704c..d64f45b89 100644 --- a/test/isdcf_name_test.cc +++ b/test/isdcf_name_test.cc @@ -96,9 +96,9 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) film->set_interop (false); BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_TLR-2_S_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); - /* Test to see that RU ratings like 6+ survive */ + /* Test to see that RU ratings like 6+ are stripped of their + */ film->set_ratings({dcp::Rating("RARS", "6+")}); - BOOST_CHECK_EQUAL (film->dcp_name(false), "MyNiceFilmWith_TLR-2_S_DE-fr_US-6+_MOS_4K_DI_20140704_PPF_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->dcp_name(false), "MyNiceFilmWith_TLR-2_S_DE-fr_US-6_MOS_4K_DI_20140704_PPF_SMPTE_OV"); film->set_ratings({dcp::Rating("MPA", "R")}); /* Test interior aspect ratio: shouldn't be shown with trailers */