summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2018-11-12 13:22:36 +0100
committerLennart Poettering <lennart@poettering.net>2018-11-14 17:01:54 +0100
commit46e8b9470ae78eeee2cb84a3b06ef9f0c98b3e08 (patch)
tree8d5147c9885a767939c612a5e3f78667ec175da2 /src
parent0db9bd200f62a5707ea16552537dcaad2d9e9331 (diff)
downloadsystemd-46e8b9470ae78eeee2cb84a3b06ef9f0c98b3e08.tar.gz
localed: don't silently eat up errors, log something
Diffstat (limited to 'src')
-rw-r--r--src/locale/localed.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/locale/localed.c b/src/locale/localed.c
index c949fa3831..67d92e4808 100644
--- a/src/locale/localed.c
+++ b/src/locale/localed.c
@@ -40,11 +40,11 @@ static int locale_update_system_manager(Context *c, sd_bus *bus) {
l_unset = new0(char*, _VARIABLE_LC_MAX);
if (!l_unset)
- return -ENOMEM;
+ return log_oom();
l_set = new0(char*, _VARIABLE_LC_MAX);
if (!l_set)
- return -ENOMEM;
+ return log_oom();
for (p = 0, c_set = 0, c_unset = 0; p < _VARIABLE_LC_MAX; p++) {
const char *name;
@@ -57,8 +57,9 @@ static int locale_update_system_manager(Context *c, sd_bus *bus) {
else {
char *s;
- if (asprintf(&s, "%s=%s", name, c->locale[p]) < 0)
- return -ENOMEM;
+ s = strjoin(name, "=", c->locale[p]);
+ if (!s)
+ return log_oom();
l_set[c_unset++] = s;
}
@@ -71,15 +72,15 @@ static int locale_update_system_manager(Context *c, sd_bus *bus) {
"org.freedesktop.systemd1.Manager",
"UnsetAndSetEnvironment");
if (r < 0)
- return r;
+ return bus_log_create_error(r);
r = sd_bus_message_append_strv(m, l_unset);
if (r < 0)
- return r;
+ return bus_log_create_error(r);
r = sd_bus_message_append_strv(m, l_set);
if (r < 0)
- return r;
+ return bus_log_create_error(r);
r = sd_bus_call(bus, m, 0, &error, NULL);
if (r < 0)