mirror of
https://github.com/systemd/systemd.git
synced 2025-01-26 14:04:03 +03:00
job: truncate unit description
The comment above says we're truncating the string but that's not true, an assert will fail in xsprintf if the description is longer than LINE_MAX. Let's use snprintf instead of xsprintf to make sure it's truncated. We'll cast its result to void to tell static checkers we're fine with truncation.
This commit is contained in:
parent
9371f858a5
commit
574432f889
@ -776,9 +776,12 @@ static void job_log_status_message(Unit *u, JobType t, JobResult result) {
|
||||
if (!format)
|
||||
return;
|
||||
|
||||
/* The description might be longer than the buffer, but that's OK, we'll just truncate it here */
|
||||
/* The description might be longer than the buffer, but that's OK,
|
||||
* we'll just truncate it here. Note that we use snprintf() rather than
|
||||
* xsprintf() on purpose here: we are fine with truncation and don't
|
||||
* consider that an error. */
|
||||
DISABLE_WARNING_FORMAT_NONLITERAL;
|
||||
xsprintf(buf, format, unit_description(u));
|
||||
(void) snprintf(buf, sizeof(buf), format, unit_description(u));
|
||||
REENABLE_WARNING;
|
||||
|
||||
switch (t) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user