]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
logind: Fix org.freedesktop.login1.set-reboot-to-boot-loader-menu saving to the wrong...
authorHans de Goede <hdegoede@redhat.com>
Mon, 20 Jul 2020 13:06:43 +0000 (15:06 +0200)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 21 Jul 2020 01:02:34 +0000 (10:02 +0900)
According to the docs, and to the
org.freedesktop.login1.get-reboot-to-boot-loader-menu code, the
(oneshot) boot-loader-menu timeout should be stored in
/run/systemd/reboot-to-boot-loader-menu, but the set method was storing it
in /run/systemd/reboot-to-loader-menu.

This commit fixes this. Note that the fixed name also is a better match
for the dbus call names and matches the related
/run/systemd/reboot-to-boot-loader-entry structure, so fixing the set code,
rather then the get code + docs seems like the right thing to do here.

src/login/logind-dbus.c

index 1b6304b57f54ef93bb48d7b59327ec34dde65415..75a48300adbcb212af606620405a183fe14c36d3 100644 (file)
@@ -2855,14 +2855,14 @@ static int method_set_reboot_to_boot_loader_menu(
                         return r;
         } else {
                 if (x == UINT64_MAX) {
-                        if (unlink("/run/systemd/reboot-to-loader-menu") < 0 && errno != ENOENT)
+                        if (unlink("/run/systemd/reboot-to-boot-loader-menu") < 0 && errno != ENOENT)
                                 return -errno;
                 } else {
                         char buf[DECIMAL_STR_MAX(uint64_t) + 1];
 
                         xsprintf(buf, "%" PRIu64, x); /* µs granularity */
 
-                        r = write_string_file_atomic_label("/run/systemd/reboot-to-loader-menu", buf);
+                        r = write_string_file_atomic_label("/run/systemd/reboot-to-boot-loader-menu", buf);
                         if (r < 0)
                                 return r;
                 }