aboutsummaryrefslogtreecommitdiffstats
path: root/libavdevice/libdc1394.c
diff options
context:
space:
mode:
authorCarl Eugen Hoyos <ceffmpeg@gmail.com>2017-08-18 19:20:15 +0200
committerCarl Eugen Hoyos <ceffmpeg@gmail.com>2017-08-18 19:20:15 +0200
commit285c015f1077a1d357dacdccc22ab02fd4aefe0a (patch)
tree4de485ac4701e8eedae62ee1490495dc50b0d7ea /libavdevice/libdc1394.c
parentf386dd70acdc81d42d6bcb885d2889634cdf45b7 (diff)
downloadffmpeg-285c015f1077a1d357dacdccc22ab02fd4aefe0a.tar.gz
lavd/libdc1394: Do not crash if dc1394_camera_new() fails.
Fixes Ubuntu bug 1710849
Diffstat (limited to 'libavdevice/libdc1394.c')
-rw-r--r--libavdevice/libdc1394.c8
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");
}