v4l2: remove call to v4l2_fd_open.
authorNicolas George <nicolas.george@normalesup.org>
Fri, 20 Jul 2012 08:55:59 +0000 (10:55 +0200)
committerNicolas George <nicolas.george@normalesup.org>
Fri, 20 Jul 2012 19:12:10 +0000 (21:12 +0200)
v4l2_fd_open is already called at the end of v4l2_open;
calling a second time leaks structures inside libv4l2.

Fix trac ticket #1560.

libavdevice/v4l2.c

index 4829b1b..2808e13 100644 (file)
@@ -156,9 +156,6 @@ static int device_open(AVFormatContext *ctx)
 {
     struct v4l2_capability cap;
     int fd;
-#if CONFIG_LIBV4L2
-    int fd_libv4l;
-#endif
     int res, err;
     int flags = O_RDWR;
 
@@ -175,16 +172,6 @@ static int device_open(AVFormatContext *ctx)
 
         return AVERROR(err);
     }
-#if CONFIG_LIBV4L2
-    fd_libv4l = v4l2_fd_open(fd, 0);
-    if (fd < 0) {
-        err = AVERROR(errno);
-        av_log(ctx, AV_LOG_ERROR, "Cannot open video device with libv4l neither %s : %s\n",
-               ctx->filename, strerror(errno));
-        return err;
-    }
-    fd = fd_libv4l;
-#endif
 
     res = v4l2_ioctl(fd, VIDIOC_QUERYCAP, &cap);
     if (res < 0) {