mirror of
https://github.com/systemd/systemd
synced 2025-10-06 00:13:24 +02:00
core: console status fixes (#39029)
This commit is contained in:
@@ -772,8 +772,8 @@ static void job_emit_done_message(Unit *u, uint32_t job_id, JobType t, JobResult
|
||||
/* No message on the console if the job did not actually do anything due to unmet condition. */
|
||||
if (console_only)
|
||||
return;
|
||||
else
|
||||
do_console = false;
|
||||
|
||||
do_console = false;
|
||||
}
|
||||
|
||||
if (!console_only) { /* Skip printing if output goes to the console, and job_print_status_message()
|
||||
|
@@ -4525,10 +4525,10 @@ static bool manager_should_show_status(Manager *m, StatusType type) {
|
||||
return false;
|
||||
|
||||
/* If we cannot find out the status properly, just proceed. */
|
||||
if (type != STATUS_TYPE_EMERGENCY && manager_check_ask_password(m) > 0)
|
||||
if (type < STATUS_TYPE_EMERGENCY && manager_check_ask_password(m) > 0)
|
||||
return false;
|
||||
|
||||
if (type == STATUS_TYPE_NOTICE && m->show_status != SHOW_STATUS_NO)
|
||||
if (type >= STATUS_TYPE_NOTICE && manager_get_show_status(m) != SHOW_STATUS_NO)
|
||||
return true;
|
||||
|
||||
return manager_get_show_status_on(m);
|
||||
|
@@ -1825,7 +1825,15 @@ static bool unit_test_assert(Unit *u) {
|
||||
return u->assert_result;
|
||||
}
|
||||
|
||||
void unit_status_printf(Unit *u, StatusType status_type, const char *status, const char *format, const char *ident) {
|
||||
void unit_status_printf(
|
||||
Unit *u,
|
||||
StatusType status_type,
|
||||
const char *status,
|
||||
const char *format,
|
||||
const char *ident) {
|
||||
|
||||
assert(u);
|
||||
|
||||
if (log_get_show_color()) {
|
||||
if (u->manager->status_unit_format == STATUS_UNIT_FORMAT_COMBINED && strchr(ident, ' '))
|
||||
ident = strjoina(ANSI_HIGHLIGHT, u->id, ANSI_NORMAL, " - ", u->description);
|
||||
|
@@ -52,10 +52,12 @@ typedef enum OOMPolicy {
|
||||
} OOMPolicy;
|
||||
|
||||
typedef enum StatusType {
|
||||
STATUS_TYPE_EPHEMERAL,
|
||||
STATUS_TYPE_EPHEMERAL, /* ordered by severity! Do not break order */
|
||||
STATUS_TYPE_NORMAL,
|
||||
STATUS_TYPE_NOTICE,
|
||||
STATUS_TYPE_EMERGENCY,
|
||||
_STATUS_TYPE_MAX,
|
||||
_STATUS_TYPE_INVALID = -EINVAL,
|
||||
} StatusType;
|
||||
|
||||
static inline bool UNIT_IS_ACTIVE_OR_RELOADING(UnitActiveState t) {
|
||||
|
Reference in New Issue
Block a user