1
0
mirror of https://github.com/systemd/systemd.git synced 2025-03-29 06:50:16 +03:00

logind: make scope of wall message handling smaller

This commit is contained in:
Lennart Poettering 2015-09-05 20:24:08 +02:00
parent 8ff4d2ab0d
commit 91b3e7fb6c

View File

@ -1785,10 +1785,9 @@ static int nologin_timeout_handler(
}
static int update_schedule_file(Manager *m) {
int r;
_cleanup_free_ char *temp_path = NULL;
_cleanup_fclose_ FILE *f = NULL;
_cleanup_free_ char *t = NULL, *temp_path = NULL;
int r;
assert(m);
@ -1796,12 +1795,6 @@ static int update_schedule_file(Manager *m) {
if (r < 0)
return log_error_errno(r, "Failed to create shutdown subdirectory: %m");
if (!isempty(m->wall_message)) {
t = cescape(m->wall_message);
if (!t)
return log_oom();
}
r = fopen_temporary("/run/systemd/shutdown/scheduled", &f, &temp_path);
if (r < 0)
return log_error_errno(r, "Failed to save information about scheduled shutdowns: %m");
@ -1816,8 +1809,17 @@ static int update_schedule_file(Manager *m) {
m->enable_wall_messages,
m->scheduled_shutdown_type);
if (t)
if (!isempty(m->wall_message)) {
_cleanup_free_ char *t;
t = cescape(m->wall_message);
if (!t) {
r = -ENOMEM;
goto fail;
}
fprintf(f, "WALL_MESSAGE=%s\n", t);
}
r = fflush_and_check(f);
if (r < 0)