udev: fix unlikely descriptor leak
authorRémi Denis-Courmont <remi@remlab.net>
Tue, 22 Apr 2014 21:11:05 +0000 (00:11 +0300)
committerRémi Denis-Courmont <remi@remlab.net>
Tue, 22 Apr 2014 21:11:28 +0000 (00:11 +0300)
modules/services_discovery/udev.c

index 199467f..48050c5 100644 (file)
@@ -535,8 +535,9 @@ static char *disc_get_mrl (struct udev_device *dev)
     val = udev_device_get_property_value (dev, "ID_CDROM_MEDIA_STATE");
     if (val == NULL)
     {   /* Force probing of the disc in the drive if any. */
-        int fd = open (node, O_RDONLY);
-        close (fd);
+        int fd = open (node, O_RDONLY|O_CLOEXEC);
+        if (fd != -1)
+            close (fd);
         return NULL;
     }
     if (!strcmp (val, "blank"))