summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-05-11 01:41:39 +0100
committerCarl Hetherington <cth@carlh.net>2016-05-18 11:50:29 +0100
commite39cf78842eb33fac1deaf095c549ce857743b74 (patch)
tree3723c5c724a0f27f231a3d10affea4f1965ca14a /src
parent49a1e2a600bd7b9d2d4a926256378e6134704a1a (diff)
Fix a few crashes.
Diffstat (limited to 'src')
-rw-r--r--src/lib/ffmpeg_content.cc20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/lib/ffmpeg_content.cc b/src/lib/ffmpeg_content.cc
index 564200c87..8bcc0986d 100644
--- a/src/lib/ffmpeg_content.cc
+++ b/src/lib/ffmpeg_content.cc
@@ -349,9 +349,15 @@ FFmpegContent::identifier () const
{
SafeStringStream s;
- s << Content::identifier() << "_"
- << video->identifier() << "_"
- << subtitle->identifier();
+ s << Content::identifier();
+
+ if (video) {
+ s << "_" << video->identifier();
+ }
+
+ if (subtitle) {
+ s << "_" << subtitle->identifier();
+ }
boost::mutex::scoped_lock lm (_mutex);
@@ -536,8 +542,12 @@ vector<shared_ptr<FFmpegAudioStream> >
FFmpegContent::ffmpeg_audio_streams () const
{
vector<shared_ptr<FFmpegAudioStream> > fa;
- BOOST_FOREACH (AudioStreamPtr i, audio->streams()) {
- fa.push_back (dynamic_pointer_cast<FFmpegAudioStream> (i));
+
+ if (audio) {
+ BOOST_FOREACH (AudioStreamPtr i, audio->streams()) {
+ fa.push_back (dynamic_pointer_cast<FFmpegAudioStream> (i));
+ }
}
+
return fa;
}