mirror of
https://github.com/systemd/systemd
synced 2024-10-15 12:34:37 +00:00
manager: use _cleanup_ in manager_add_job()
This commit is contained in:
parent
542fe40845
commit
c7e3eb5dd5
|
@ -2019,7 +2019,7 @@ int manager_add_job(
|
|||
sd_bus_error *error,
|
||||
Job **ret) {
|
||||
|
||||
Transaction *tr;
|
||||
_cleanup_(transaction_abort_and_freep) Transaction *tr = NULL;
|
||||
int r;
|
||||
|
||||
assert(m);
|
||||
|
@ -2048,23 +2048,23 @@ int manager_add_job(
|
|||
IN_SET(mode, JOB_IGNORE_DEPENDENCIES, JOB_IGNORE_REQUIREMENTS),
|
||||
mode == JOB_IGNORE_DEPENDENCIES, error);
|
||||
if (r < 0)
|
||||
goto tr_abort;
|
||||
return r;
|
||||
|
||||
if (mode == JOB_ISOLATE) {
|
||||
r = transaction_add_isolate_jobs(tr, m);
|
||||
if (r < 0)
|
||||
goto tr_abort;
|
||||
return r;
|
||||
}
|
||||
|
||||
if (mode == JOB_TRIGGERING) {
|
||||
r = transaction_add_triggering_jobs(tr, unit);
|
||||
if (r < 0)
|
||||
goto tr_abort;
|
||||
return r;
|
||||
}
|
||||
|
||||
r = transaction_activate(tr, m, mode, affected_jobs, error);
|
||||
if (r < 0)
|
||||
goto tr_abort;
|
||||
return r;
|
||||
|
||||
log_unit_debug(unit,
|
||||
"Enqueued job %s/%s as %u", unit->id,
|
||||
|
@ -2073,13 +2073,8 @@ int manager_add_job(
|
|||
if (ret)
|
||||
*ret = tr->anchor_job;
|
||||
|
||||
transaction_free(tr);
|
||||
tr = transaction_free(tr);
|
||||
return 0;
|
||||
|
||||
tr_abort:
|
||||
transaction_abort(tr);
|
||||
transaction_free(tr);
|
||||
return r;
|
||||
}
|
||||
|
||||
int manager_add_job_by_name(Manager *m, JobType type, const char *name, JobMode mode, Set *affected_jobs, sd_bus_error *e, Job **ret) {
|
||||
|
|
Loading…
Reference in a new issue