From 384251daffb98d88b0fe897b341bb68445f885de Mon Sep 17 00:00:00 2001 From: Josh de Kock Date: Sun, 24 Jul 2016 19:49:40 +0100 Subject: [PATCH] lavd/libdc1394: distinguish between enumeration errors and no cameras found Signed-off-by: Michael Niedermayer --- libavdevice/libdc1394.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/libavdevice/libdc1394.c b/libavdevice/libdc1394.c index 43fa232922..60c6146652 100644 --- a/libavdevice/libdc1394.c +++ b/libavdevice/libdc1394.c @@ -302,9 +302,14 @@ static int dc1394_v2_read_header(AVFormatContext *c) /* Now let us prep the hardware. */ dc1394->d = dc1394_new(); - dc1394_camera_enumerate (dc1394->d, &list); - if ( !list || list->num == 0) { - av_log(c, AV_LOG_ERROR, "Unable to look for an IIDC camera\n\n"); + if (dc1394_camera_enumerate(dc1394->d, &list) != DC1394_SUCCESS || !list) { + av_log(c, AV_LOG_ERROR, "Unable to look for an IIDC camera.\n"); + goto out; + } + + if (list->num == 0) { + av_log(c, AV_LOG_ERROR, "No cameras found.\n"); + dc1394_camera_free_list(list); goto out; }