summaryrefslogtreecommitdiff
path: root/src/lib/isdcf_metadata.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2019-04-28 20:11:21 +0000
committerCarl Hetherington <cth@carlh.net>2019-04-28 20:11:21 +0000
commit554167b8c83ce15f662a71dccd9e6826231c360e (patch)
treede28b152a7474600384de9035a7e0ddb8e412137 /src/lib/isdcf_metadata.cc
parent4540ff0beb2dad9911afc309b75952adc226fa48 (diff)
Restore ISDCF subtitle language option as an override (#1536).
Diffstat (limited to 'src/lib/isdcf_metadata.cc')
-rw-r--r--src/lib/isdcf_metadata.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/lib/isdcf_metadata.cc b/src/lib/isdcf_metadata.cc
index 0d7d02cde..c333325a1 100644
--- a/src/lib/isdcf_metadata.cc
+++ b/src/lib/isdcf_metadata.cc
@@ -33,8 +33,7 @@ using dcp::raw_convert;
ISDCFMetadata::ISDCFMetadata (cxml::ConstNodePtr node)
: content_version (node->number_child<int> ("ContentVersion"))
, audio_language (node->string_child ("AudioLanguage"))
- /* Old versions contained this tag, but not these details are held in content */
- , has_subtitle_language (static_cast<bool>(node->optional_node_child("SubtitleLanguage")))
+ , subtitle_language (node->optional_string_child("SubtitleLanguage"))
, territory (node->string_child ("Territory"))
, rating (node->string_child ("Rating"))
, studio (node->string_child ("Studio"))
@@ -54,6 +53,9 @@ void
ISDCFMetadata::as_xml (xmlpp::Node* root) const
{
root->add_child("ContentVersion")->add_child_text (raw_convert<string> (content_version));
+ if (subtitle_language) {
+ root->add_child("SubtitleLanguage")->add_child_text (*subtitle_language);
+ }
root->add_child("AudioLanguage")->add_child_text (audio_language);
root->add_child("Territory")->add_child_text (territory);
root->add_child("Rating")->add_child_text (rating);
@@ -71,6 +73,7 @@ bool
operator== (ISDCFMetadata const & a, ISDCFMetadata const & b)
{
return a.content_version == b.content_version &&
+ a.subtitle_language == b.subtitle_language &&
a.audio_language == b.audio_language &&
a.territory == b.territory &&
a.rating == b.rating &&