chiark / gitweb /
logind: make sure we create /var/lib/systemd before using it
[elogind.git] / src / login / logind-dbus.c
index 42dd54dc35138d7a9cbca2f4418e2432d562c586..da2eb141c7ad57a7a0509aa90da887b9501a4fa5 100644 (file)
@@ -1188,6 +1188,8 @@ static DBusHandlerResult manager_message_handler(
                 if (r < 0)
                         return bus_send_error_reply(connection, message, &error, r);
 
                 if (r < 0)
                         return bus_send_error_reply(connection, message, &error, r);
 
+                mkdir_p("/var/lib/systemd", 0755);
+
                 r = safe_mkdir("/var/lib/systemd/linger", 0755, 0, 0);
                 if (r < 0)
                         return bus_send_error_reply(connection, message, &error, r);
                 r = safe_mkdir("/var/lib/systemd/linger", 0755, 0, 0);
                 if (r < 0)
                         return bus_send_error_reply(connection, message, &error, r);