X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=job.c;h=887de92cadf88eb70033ff665e6be829b421b513;hb=1b322bdb2a147e999c3861cba8a6b3ac0f3b712a;hp=3210bb42c28d9ea10dcbae0d8fef68e7a6acd638;hpb=701cc384c283206a29b21e4e7302e5cf5f2d9433;p=elogind.git diff --git a/job.c b/job.c index 3210bb42c..887de92ca 100644 --- a/job.c +++ b/job.c @@ -150,8 +150,8 @@ void job_dump(Job *j, FILE*f, const char *prefix) { assert(f); fprintf(f, - "%s→ Job %u:\n" - "%s\tAction: %s → %s\n" + "%s-> Job %u:\n" + "%s\tAction: %s -> %s\n" "%s\tState: %s\n" "%s\tForced: %s\n", prefix, j->id, @@ -464,7 +464,7 @@ int job_finish_and_invalidate(Job *j, bool success) { /* Patch restart jobs so that they become normal start jobs */ if (success && (j->type == JOB_RESTART || j->type == JOB_TRY_RESTART)) { - log_debug("Converting job %s/%s → %s/%s", + log_debug("Converting job %s/%s -> %s/%s", j->unit->meta.id, job_type_to_string(j->type), j->unit->meta.id, job_type_to_string(JOB_START)); @@ -541,6 +541,11 @@ void job_add_to_dbus_queue(Job *j) { if (j->in_dbus_queue) return; + if (set_isempty(j->manager->subscribed)) { + j->sent_dbus_new_signal = true; + return; + } + LIST_PREPEND(Job, dbus_queue, j->manager->dbus_job_queue, j); j->in_dbus_queue = true; } @@ -577,7 +582,8 @@ DEFINE_STRING_TABLE_LOOKUP(job_type, JobType); static const char* const job_mode_table[_JOB_MODE_MAX] = { [JOB_FAIL] = "fail", - [JOB_REPLACE] = "replace" + [JOB_REPLACE] = "replace", + [JOB_ISOLATE] = "isolate" }; DEFINE_STRING_TABLE_LOOKUP(job_mode, JobMode);