summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-04-20 14:15:28 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-04-21 13:37:04 -0400
commitba360bb05ce9b0bb86821fcdfebf66ccd9f7efd5 (patch)
tree1eea995131e7f602d4d800330ffdafb5ec8b3171 /src/core
parentc8304ba9027aa2bbca3aa9dfe9fcc951c16932e6 (diff)
tree-wide: mark log_struct with _printf_ and fix fallout
log_struct takes multiple format strings, each one followed by arguments. The _printf_ annotation is not sufficiently flexible to express this, but we can still annotate the first format string, though not its arguments (because their number is unknown). With the annotation, the places which specified the message id or similar as the first pattern cause a warning from -Wformat-nonliteral. This can be trivially fixed by putting the MESSAGE= first. This change will help find issues where a non-literal is erroneously used as the pattern.
Diffstat (limited to 'src/core')
-rw-r--r--src/core/execute.c4
-rw-r--r--src/core/job.c6
-rw-r--r--src/core/service.c2
-rw-r--r--src/core/unit.c4
4 files changed, 8 insertions, 8 deletions
diff --git a/src/core/execute.c b/src/core/execute.c
index d7798387c5..29988c22ae 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
@@ -2887,9 +2887,9 @@ static int exec_child(
if (line) {
log_open();
log_struct(LOG_DEBUG,
- LOG_UNIT_ID(unit),
"EXECUTABLE=%s", command->path,
LOG_UNIT_MESSAGE(unit, "Executing: %s", line),
+ LOG_UNIT_ID(unit),
NULL);
log_close();
}
@@ -2953,9 +2953,9 @@ int exec_spawn(Unit *unit,
return log_oom();
log_struct(LOG_DEBUG,
- LOG_UNIT_ID(unit),
LOG_UNIT_MESSAGE(unit, "About to execute: %s", line),
"EXECUTABLE=%s", command->path,
+ LOG_UNIT_ID(unit),
NULL);
pid = fork();
if (pid < 0)
diff --git a/src/core/job.c b/src/core/job.c
index e2349830a8..a02f1bb2bc 100644
--- a/src/core/job.c
+++ b/src/core/job.c
@@ -800,18 +800,18 @@ static void job_log_status_message(Unit *u, JobType t, JobResult result) {
default:
log_struct(job_result_log_level[result],
- LOG_UNIT_ID(u),
LOG_MESSAGE("%s", buf),
"RESULT=%s", job_result_to_string(result),
+ LOG_UNIT_ID(u),
NULL);
return;
}
log_struct(job_result_log_level[result],
- mid,
- LOG_UNIT_ID(u),
LOG_MESSAGE("%s", buf),
"RESULT=%s", job_result_to_string(result),
+ LOG_UNIT_ID(u),
+ mid,
NULL);
}
diff --git a/src/core/service.c b/src/core/service.c
index 74054887b9..185173a542 100644
--- a/src/core/service.c
+++ b/src/core/service.c
@@ -2693,7 +2693,6 @@ static void service_sigchld_event(Unit *u, pid_t pid, int code, int status) {
log_struct(f == SERVICE_SUCCESS ? LOG_DEBUG :
(code == CLD_EXITED ? LOG_NOTICE : LOG_WARNING),
- LOG_UNIT_ID(u),
LOG_UNIT_MESSAGE(u, "Main process exited, code=%s, status=%i/%s",
sigchld_code_to_string(code), status,
strna(code == CLD_EXITED
@@ -2701,6 +2700,7 @@ static void service_sigchld_event(Unit *u, pid_t pid, int code, int status) {
: signal_to_string(status))),
"EXIT_CODE=%s", sigchld_code_to_string(code),
"EXIT_STATUS=%i", status,
+ LOG_UNIT_ID(u),
NULL);
if (s->result == SERVICE_SUCCESS)
diff --git a/src/core/unit.c b/src/core/unit.c
index f76b6c30a8..25ea5a8591 100644
--- a/src/core/unit.c
+++ b/src/core/unit.c
@@ -1497,9 +1497,9 @@ static void unit_status_log_starting_stopping_reloading(Unit *u, JobType t) {
* possible, which means we should avoid the low-level unit
* name. */
log_struct(LOG_INFO,
- mid,
- LOG_UNIT_ID(u),
LOG_MESSAGE("%s", buf),
+ LOG_UNIT_ID(u),
+ mid,
NULL);
}