diff options
author | Carl Eugen Hoyos <ceffmpeg@gmail.com> | 2017-08-18 19:20:15 +0200 |
---|---|---|
committer | Carl Eugen Hoyos <ceffmpeg@gmail.com> | 2017-08-18 19:20:15 +0200 |
commit | 285c015f1077a1d357dacdccc22ab02fd4aefe0a (patch) | |
tree | 4de485ac4701e8eedae62ee1490495dc50b0d7ea /libavdevice | |
parent | f386dd70acdc81d42d6bcb885d2889634cdf45b7 (diff) | |
download | ffmpeg-285c015f1077a1d357dacdccc22ab02fd4aefe0a.tar.gz |
lavd/libdc1394: Do not crash if dc1394_camera_new() fails.
Fixes Ubuntu bug 1710849
Diffstat (limited to 'libavdevice')
-rw-r--r-- | libavdevice/libdc1394.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libavdevice/libdc1394.c b/libavdevice/libdc1394.c index afffd89a8b..003335fdd8 100644 --- a/libavdevice/libdc1394.c +++ b/libavdevice/libdc1394.c @@ -190,6 +190,14 @@ static int dc1394_read_header(AVFormatContext *c) /* FIXME: To select a specific camera I need to search in list its guid */ dc1394->camera = dc1394_camera_new (dc1394->d, list->ids[0].guid); + + if (!dc1394->camera) { + av_log(c, AV_LOG_ERROR, "Unable to open camera with guid 0x%"PRIx64"\n", + list->ids[0].guid); + dc1394_camera_free_list(list); + goto out; + } + if (list->num > 1) { av_log(c, AV_LOG_INFO, "Working with the first camera found\n"); } |