diff options
| author | Carl Hetherington <cth@carlh.net> | 2023-08-12 00:13:08 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2023-08-12 00:13:08 +0200 |
| commit | 3472cd4dc301beb7db39419e922fc0b02cf36cf4 (patch) | |
| tree | f29ec76856e15b97f7f9e9b6a6cc9f853f5231e4 | |
| parent | d5898263e49c5a44110f7d5745bda3a00dcbdb8b (diff) | |
Prevent empty <LabelText> in <ContentVersion> (#2594).
| -rw-r--r-- | src/lib/writer.cc | 5 | ||||
| -rw-r--r-- | src/wx/interop_metadata_dialog.cc | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/lib/writer.cc b/src/lib/writer.cc index 8b8ab89de..1ccf7c759 100644 --- a/src/lib/writer.cc +++ b/src/lib/writer.cc @@ -616,7 +616,10 @@ Writer::finish (boost::filesystem::path output_dcp) vector<dcp::ContentVersion> cv; for (auto i: film()->content_versions()) { - cv.push_back (dcp::ContentVersion(i)); + /* Make sure we don't end up writing an empty <LabelText> node as some validators + * complain about that. + */ + cv.push_back(!i.empty() ? dcp::ContentVersion(i) : dcp::ContentVersion("1")); } if (cv.empty()) { cv = { dcp::ContentVersion("1") }; diff --git a/src/wx/interop_metadata_dialog.cc b/src/wx/interop_metadata_dialog.cc index 0258f9ca5..a3e236691 100644 --- a/src/wx/interop_metadata_dialog.cc +++ b/src/wx/interop_metadata_dialog.cc @@ -76,5 +76,10 @@ InteropMetadataDialog::setup_standard (wxPanel* panel, wxSizer* sizer) void InteropMetadataDialog::content_version_changed () { - film()->set_content_versions ({ wx_to_std(_content_version->GetValue()) }); + auto version = wx_to_std(_content_version->GetValue()); + if (version.empty()) { + film()->set_content_versions({}); + } else { + film()->set_content_versions({version}); + } } |
