From: Daniel Mack Date: Mon, 20 Jul 2015 21:17:37 +0000 (+0200) Subject: logind: fix write_string_file() fallout X-Git-Tag: v226.4~1^2~195 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=6609ed3a939c2feb8a7cd39ce4f45413f2d58315 logind: fix write_string_file() fallout WRITE_STRING_FILE_ATOMIC is only valid if WRITE_STRING_FILE_CREATE is also given. IOW, an atomic file write operation is only possible when creating a file is also being asked for. This is a regression from the recent write_string_file() rework. --- diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index 049e33e2a..e6371ff04 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -1774,7 +1774,7 @@ static int nologin_timeout_handler( log_info("Creating /run/nologin, blocking further logins..."); - r = write_string_file("/run/nologin", "System is going down.", WRITE_STRING_FILE_ATOMIC); + r = write_string_file("/run/nologin", "System is going down.", WRITE_STRING_FILE_CREATE|WRITE_STRING_FILE_ATOMIC); if (r < 0) log_error_errno(r, "Failed to create /run/nologin: %m"); else