]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
tree-wide: make more code use safe_close()
authorLennart Poettering <lennart@poettering.net>
Tue, 8 Sep 2015 16:53:19 +0000 (18:53 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 9 Sep 2015 06:20:19 +0000 (08:20 +0200)
Replace this:

        close(fd);
        fd = -1;

write this:

        fd = safe_close(fd);

coccinelle/safe_close.cocci [new file with mode: 0644]
src/login/logind-button.c
src/udev/udev-event.c

diff --git a/coccinelle/safe_close.cocci b/coccinelle/safe_close.cocci
new file mode 100644 (file)
index 0000000..6fedd80
--- /dev/null
@@ -0,0 +1,18 @@
+@@
+expression fd;
+@@
+- close(fd);
+- fd = -1;
++ fd = safe_close(fd);
+@@
+expression fd;
+@@
+- close_nointr(fd);
+- fd = -1;
++ fd = safe_close(fd);
+@@
+expression fd;
+@@
+- safe_close(fd);
+- fd = -1;
++ fd = safe_close(fd);
index 210b889c4f987cd7998b38ac69e0578c77e98603..3324c4622c765addd6e305625990a060333179da 100644 (file)
@@ -240,8 +240,7 @@ int button_open(Button *b) {
         assert(b);
 
         if (b->fd >= 0) {
-                close(b->fd);
-                b->fd = -1;
+                b->fd = safe_close(b->fd);
         }
 
         p = strjoina("/dev/input/", b->name);
@@ -267,8 +266,7 @@ int button_open(Button *b) {
         return 0;
 
 fail:
-        close(b->fd);
-        b->fd = -1;
+        b->fd = safe_close(b->fd);
         return r;
 }
 
index 47612227864035dda2608d044e2ea9c409f48381..f2b165076de61401de1b10ac06400eddb7264e82 100644 (file)
@@ -754,12 +754,10 @@ int udev_event_spawn(struct udev_event *event,
 
                 /* child closes parent's ends of pipes */
                 if (outpipe[READ_END] >= 0) {
-                        close(outpipe[READ_END]);
-                        outpipe[READ_END] = -1;
+                        outpipe[READ_END] = safe_close(outpipe[READ_END]);
                 }
                 if (errpipe[READ_END] >= 0) {
-                        close(errpipe[READ_END]);
-                        errpipe[READ_END] = -1;
+                        errpipe[READ_END] = safe_close(errpipe[READ_END]);
                 }
 
                 strscpy(arg, sizeof(arg), cmd);
@@ -785,12 +783,10 @@ int udev_event_spawn(struct udev_event *event,
         default:
                 /* parent closed child's ends of pipes */
                 if (outpipe[WRITE_END] >= 0) {
-                        close(outpipe[WRITE_END]);
-                        outpipe[WRITE_END] = -1;
+                        outpipe[WRITE_END] = safe_close(outpipe[WRITE_END]);
                 }
                 if (errpipe[WRITE_END] >= 0) {
-                        close(errpipe[WRITE_END]);
-                        errpipe[WRITE_END] = -1;
+                        errpipe[WRITE_END] = safe_close(errpipe[WRITE_END]);
                 }
 
                 spawn_read(event,