chiark / gitweb /
systemctl: fix a leak
[elogind.git] / src / core / loopback-setup.c
index 6ac1fffd75f9c74c2ec38fd5f1526f1530b64e30..98fc04dd2e93e67c799359e4844d1efa7e02acd4 100644 (file)
@@ -92,16 +92,10 @@ int loopback_setup(void) {
 
         r = start_loopback(rtnl);
         if (r == -EPERM) {
-                if (check_loopback() < 0) {
-                        log_warning("Failed to configure loopback device: %s",
-                                    strerror(EPERM));
-                        return -EPERM;
-                }
-        } else if (r < 0) {
-                log_warning("Failed to configure loopback device: %s",
-                            strerror(-r));
-                return r;
-        }
+                if (check_loopback() < 0)
+                        return log_warning_errno(EPERM, "Failed to configure loopback device: %m");
+        } else if (r < 0)
+                return log_warning_errno(r, "Failed to configure loopback device: %m");
 
 
         return 0;