summaryrefslogtreecommitdiff
path: root/sys/v4l2/gstv4l2.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/v4l2/gstv4l2.c')
-rw-r--r--sys/v4l2/gstv4l2.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/v4l2/gstv4l2.c b/sys/v4l2/gstv4l2.c
index 08ff3f582..8333eab41 100644
--- a/sys/v4l2/gstv4l2.c
+++ b/sys/v4l2/gstv4l2.c
@@ -25,6 +25,10 @@
#include "config.h"
#endif
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE /* O_CLOEXEC */
+#endif
+
#include "gst/gst-i18n-plugin.h"
#include <gst/gst.h>
@@ -124,7 +128,8 @@ gst_v4l2_probe_and_register (GstPlugin * plugin)
if (video_fd >= 0)
close (video_fd);
- video_fd = open (it->device_path, O_RDWR);
+ video_fd = open (it->device_path, O_RDWR | O_CLOEXEC);
+
if (video_fd == -1) {
GST_DEBUG ("Failed to open %s: %s", it->device_path, g_strerror (errno));
continue;