diff options
| author | Carl Hetherington <cth@carlh.net> | 2014-12-03 10:37:15 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2014-12-03 10:37:15 +0000 |
| commit | 51cc8f575b55f2a21d8503965b628c0f59f1ed33 (patch) | |
| tree | 7931d7c75bdf97d566056610cecffaf24b2c9bf4 /src/lib | |
| parent | c008066160d85b9ec9e5485375d7baaa5d27bda2 (diff) | |
Hand-apply d3bc61f0af33fedf02ac1a28cf91989ee9cd2fb6 from master;
make digest optional.
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/audio_content.cc | 2 | ||||
| -rw-r--r-- | src/lib/content.cc | 6 | ||||
| -rw-r--r-- | src/lib/content.h | 4 | ||||
| -rw-r--r-- | src/lib/ffmpeg_content.cc | 2 |
4 files changed, 8 insertions, 6 deletions
diff --git a/src/lib/audio_content.cc b/src/lib/audio_content.cc index 988090bf8..8458e3314 100644 --- a/src/lib/audio_content.cc +++ b/src/lib/audio_content.cc @@ -181,7 +181,7 @@ AudioContent::audio_analysis_path () const } boost::filesystem::path p = film->audio_analysis_dir (); - p /= digest() + "_" + audio_mapping().digest(); + p /= digest().get_value_or ("X") + "_" + audio_mapping().digest(); return p; } diff --git a/src/lib/content.cc b/src/lib/content.cc index 6e0218323..ec16b9610 100644 --- a/src/lib/content.cc +++ b/src/lib/content.cc @@ -89,7 +89,7 @@ Content::Content (shared_ptr<const Film> f, cxml::ConstNodePtr node) for (list<cxml::NodePtr>::const_iterator i = path_children.begin(); i != path_children.end(); ++i) { _paths.push_back ((*i)->content ()); } - _digest = node->string_child ("Digest"); + _digest = node->optional_string_child ("Digest"); _position = DCPTime (node->number_child<double> ("Position")); _trim_start = DCPTime (node->number_child<double> ("TrimStart")); _trim_end = DCPTime (node->number_child<double> ("TrimEnd")); @@ -125,7 +125,9 @@ Content::as_xml (xmlpp::Node* node) const for (vector<boost::filesystem::path>::const_iterator i = _paths.begin(); i != _paths.end(); ++i) { node->add_child("Path")->add_child_text (i->string ()); } - node->add_child("Digest")->add_child_text (_digest); + if (_digest) { + node->add_child("Digest")->add_child_text (_digest.get ()); + } node->add_child("Position")->add_child_text (raw_convert<string> (_position.get ())); node->add_child("TrimStart")->add_child_text (raw_convert<string> (_trim_start.get ())); node->add_child("TrimEnd")->add_child_text (raw_convert<string> (_trim_end.get ())); diff --git a/src/lib/content.h b/src/lib/content.h index 0b72ada9c..c2841b64e 100644 --- a/src/lib/content.h +++ b/src/lib/content.h @@ -110,7 +110,7 @@ public: bool paths_valid () const; /** @return MD5 digest of the content's file(s) */ - std::string digest () const { + boost::optional<std::string> digest () const { boost::mutex::scoped_lock lm (_mutex); return _digest; } @@ -169,7 +169,7 @@ protected: std::vector<boost::filesystem::path> _paths; private: - std::string _digest; + boost::optional<std::string> _digest; DCPTime _position; DCPTime _trim_start; DCPTime _trim_end; diff --git a/src/lib/ffmpeg_content.cc b/src/lib/ffmpeg_content.cc index a186db48e..e09e71041 100644 --- a/src/lib/ffmpeg_content.cc +++ b/src/lib/ffmpeg_content.cc @@ -382,7 +382,7 @@ FFmpegContent::audio_analysis_path () const */ boost::filesystem::path p = film->audio_analysis_dir (); - string name = digest (); + string name = digest().get_value_or ("X"); if (audio_stream ()) { name += "_" + audio_stream()->identifier (); } |
