backlight: Avoid passing an invalid fd into close()
authorRob Bradford <rob@linux.intel.com>
Thu, 10 Jan 2013 19:48:56 +0000 (19:48 +0000)
committerKristian Høgsberg <krh@bitplanet.net>
Thu, 10 Jan 2013 21:07:42 +0000 (16:07 -0500)
src/libbacklight.c

index add89b2..98a20be 100644 (file)
@@ -68,7 +68,8 @@ static long backlight_get(struct backlight *backlight, char *node)
        value = strtol(buffer, NULL, 10);
        ret = value;
 out:
-       close(fd);
+       if (fd >= 0)
+               close(fd);
        free(path);
        return ret;
 }
@@ -124,10 +125,10 @@ long backlight_set_brightness(struct backlight *backlight, long brightness)
        ret = backlight_get_brightness(backlight);
        backlight->brightness = ret;
 out:
-       if (buffer)
-               free(buffer);
+       free(buffer);
        free(path);
-       close(fd);
+       if (fd >= 0)
+               close(fd);
        return ret;
 }