summaryrefslogtreecommitdiff
path: root/libavdevice
diff options
context:
space:
mode:
Diffstat (limited to 'libavdevice')
-rw-r--r--libavdevice/avdevice.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavdevice/avdevice.c b/libavdevice/avdevice.c
index b4fb272eb6..58996404b3 100644
--- a/libavdevice/avdevice.c
+++ b/libavdevice/avdevice.c
@@ -75,9 +75,11 @@ int avdevice_list_devices(AVFormatContext *s, AVDeviceInfoList **device_list)
ret = s->oformat->get_device_list(s, *device_list);
else
ret = s->iformat->get_device_list(s, *device_list);
- if (ret < 0)
+ if (ret < 0) {
avdevice_free_list_devices(device_list);
- return ret;
+ return ret;
+ }
+ return (*device_list)->nb_devices;
}
static int list_devices_for_context(AVFormatContext *s, AVDictionary *options,