X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fsleep%2Fsleep.c;h=eee6bc89829ab9a8f2d24255e28d5ecc804451b6;hb=587fec427c80b6c34dcf1d7570f891fcb652a7c5;hp=626150258869ac456d9a5ef2ef3417d63e50e2dc;hpb=c33b329709ebe2755181980a050d02ec7c81ed87;p=elogind.git diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c index 626150258..eee6bc898 100644 --- a/src/sleep/sleep.c +++ b/src/sleep/sleep.c @@ -22,10 +22,8 @@ #include #include -#include #include -#include "sd-id128.h" #include "sd-messages.h" #include "log.h" #include "util.h" @@ -77,10 +75,8 @@ static int write_state(FILE **f, char **states) { fclose(*f); *f = fopen("/sys/power/state", "we"); - if (!*f) { - log_error("Failed to open /sys/power/state: %m"); - return -errno; - } + if (!*f) + return log_error_errno(errno, "Failed to open /sys/power/state: %m"); } return r; @@ -94,6 +90,7 @@ static int execute(char **modes, char **states) { arg_verb, NULL }; + static const char* const dirs[] = {SYSTEM_SLEEP_PATH, NULL}; int r; _cleanup_fclose_ FILE *f = NULL; @@ -101,17 +98,15 @@ static int execute(char **modes, char **states) { /* This file is opened first, so that if we hit an error, * we can abort before modifying any state. */ f = fopen("/sys/power/state", "we"); - if (!f) { - log_error("Failed to open /sys/power/state: %m"); - return -errno; - } + if (!f) + return log_error_errno(errno, "Failed to open /sys/power/state: %m"); /* Configure the hibernation mode */ r = write_mode(modes); if (r < 0) return r; - execute_directory(SYSTEM_SLEEP_PATH, NULL, DEFAULT_TIMEOUT_USEC, arguments); + execute_directories(dirs, DEFAULT_TIMEOUT_USEC, arguments); log_struct(LOG_INFO, LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_START), @@ -125,12 +120,12 @@ static int execute(char **modes, char **states) { log_struct(LOG_INFO, LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_STOP), - LOG_MESSAGE("MESSAGE=System resumed."), + LOG_MESSAGE("System resumed."), "SLEEP=%s", arg_verb, NULL); arguments[1] = (char*) "post"; - execute_directory(SYSTEM_SLEEP_PATH, NULL, DEFAULT_TIMEOUT_USEC, arguments); + execute_directories(dirs, DEFAULT_TIMEOUT_USEC, arguments); return r; }