summaryrefslogtreecommitdiff
path: root/src/locale
diff options
context:
space:
mode:
authorAdrian Szyndela <adrian.s@samsung.com>2020-02-26 14:44:20 +0100
committerAdrian Szyndela <adrian.s@samsung.com>2020-02-26 14:44:20 +0100
commit1fbcb85d720b101a8f58809c965c6e21774e0413 (patch)
treeedacc8801bc03d9c6b136b0683164a1715cad873 /src/locale
parent90932a624e2c56acc064a6a25fa18c30f2ca1678 (diff)
parent46659f7deb962f55c728e70597e37c2a3ab6326d (diff)
downloadsystemd-1fbcb85d720b101a8f58809c965c6e21774e0413.tar.gz
systemd-1fbcb85d720b101a8f58809c965c6e21774e0413.tar.bz2
systemd-1fbcb85d720b101a8f58809c965c6e21774e0413.zip
Merge v237 into tizen
systemd 237
Diffstat (limited to 'src/locale')
-rw-r--r--src/locale/localectl.c5
-rw-r--r--src/locale/localed.c4
2 files changed, 6 insertions, 3 deletions
diff --git a/src/locale/localectl.c b/src/locale/localectl.c
index f09fe42626..af39e431f5 100644
--- a/src/locale/localectl.c
+++ b/src/locale/localectl.c
@@ -595,7 +595,7 @@ static int localectl_main(sd_bus *bus, int argc, char *argv[]) {
}
int main(int argc, char*argv[]) {
- _cleanup_(sd_bus_flush_close_unrefp) sd_bus *bus = NULL;
+ sd_bus *bus = NULL;
int r;
setlocale(LC_ALL, "");
@@ -615,6 +615,9 @@ int main(int argc, char*argv[]) {
r = localectl_main(bus, argc, argv);
finish:
+ /* make sure we terminate the bus connection first, and then close the
+ * pager, see issue #3543 for the details. */
+ sd_bus_flush_close_unref(bus);
pager_close();
return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS;
diff --git a/src/locale/localed.c b/src/locale/localed.c
index 3e3f03e046..02f5e8c656 100644
--- a/src/locale/localed.c
+++ b/src/locale/localed.c
@@ -652,9 +652,9 @@ static int connect_bus(Context *c, sd_event *event, sd_bus **_bus) {
if (r < 0)
return log_error_errno(r, "Failed to register object: %m");
- r = sd_bus_request_name(bus, "org.freedesktop.locale1", 0);
+ r = sd_bus_request_name_async(bus, NULL, "org.freedesktop.locale1", 0, NULL, NULL);
if (r < 0)
- return log_error_errno(r, "Failed to register name: %m");
+ return log_error_errno(r, "Failed to request name: %m");
r = sd_bus_attach_event(bus, event, 0);
if (r < 0)