dcavalca / rpms / systemd

Forked from rpms/systemd 4 months ago
Clone
Blob Blame History Raw
From 6c8aaf0c1bf2a04010ae7125a08ceb51e7058712 Mon Sep 17 00:00:00 2001
From: Tom Gundersen <teg@jklm.no>
Date: Wed, 17 Sep 2014 19:53:01 +0200
Subject: [PATCH] udev: rules - close empty file

If the file is found to be empty, we exit early without closing the file first.

Found by coverity. Fixes CID #1237759.
---
 src/udev/udev-rules.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
index 2a691f6ab7..3bc25f7c26 100644
--- a/src/udev/udev-rules.c
+++ b/src/udev/udev-rules.c
@@ -1575,7 +1575,7 @@ invalid:
 }
 
 static int parse_file(struct udev_rules *rules, const char *filename) {
-        FILE *f;
+        _cleanup_fclose_ FILE *f = NULL;
         unsigned int first_token;
         unsigned int filename_off;
         char line[UTIL_LINE_SIZE];
@@ -1633,7 +1633,6 @@ static int parse_file(struct udev_rules *rules, const char *filename) {
                 }
                 add_rule(rules, key, filename, filename_off, line_nr);
         }
-        fclose(f);
 
         /* link GOTOs to LABEL rules in this file to be able to fast-forward */
         for (i = first_token+1; i < rules->token_cur; i++) {