diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-08-17 02:15:02 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-08-17 02:15:02 +0100 |
| commit | 645c667e29150190d6eb89e2237c4ec717c2d1b5 (patch) | |
| tree | 74ec4188e3fb113087969e96624ab041359f65b3 /src | |
| parent | 124a905a55dea0c0f8574f8fec8825f3373a9bae (diff) | |
Adjust for Interop <PackingList> not needing content.
Diffstat (limited to 'src')
| -rw-r--r-- | src/dcp.cc | 24 |
1 files changed, 19 insertions, 5 deletions
@@ -143,12 +143,26 @@ DCP::read (bool keep_going, ReadErrors* errors, bool ignore_incorrect_picture_mx if (starts_with (p, "file://")) { p = p.substr (7); } - optional<string> pkl_bool = i->optional_string_child("PackingList"); - if (pkl_bool && *pkl_bool == "true") { - pkl_path = p; - } else { - paths.insert (make_pair (remove_urn_uuid (i->string_child ("Id")), p)); + switch (*_standard) { + case INTEROP: + if (i->optional_node_child("PackingList")) { + pkl_path = p; + } else { + paths.insert (make_pair (remove_urn_uuid (i->string_child ("Id")), p)); + } + break; + case SMPTE: + { + optional<string> pkl_bool = i->optional_string_child("PackingList"); + if (pkl_bool && *pkl_bool == "true") { + pkl_path = p; + } else { + paths.insert (make_pair (remove_urn_uuid (i->string_child ("Id")), p)); + } + break; } + } + } if (!pkl_path) { |
