tree-wide: use LIST_POP()
This commit is contained in:
+1
-2
@@ -6326,8 +6326,7 @@ void exec_command_done_array(ExecCommand *c, size_t n) {
|
||||
ExecCommand* exec_command_free_list(ExecCommand *c) {
|
||||
ExecCommand *i;
|
||||
|
||||
while ((i = c)) {
|
||||
LIST_REMOVE(command, c, i);
|
||||
while ((i = LIST_POP(command, c))) {
|
||||
exec_command_done(i);
|
||||
free(i);
|
||||
}
|
||||
|
||||
+7
-16
@@ -1257,10 +1257,8 @@ static unsigned manager_dispatch_release_resources_queue(Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((u = m->release_resources_queue)) {
|
||||
while ((u = LIST_POP(release_resources_queue, m->release_resources_queue))) {
|
||||
assert(u->in_release_resources_queue);
|
||||
|
||||
LIST_REMOVE(release_resources_queue, m->release_resources_queue, u);
|
||||
u->in_release_resources_queue = false;
|
||||
|
||||
n++;
|
||||
@@ -1364,12 +1362,11 @@ static unsigned manager_dispatch_gc_unit_queue(Manager *m) {
|
||||
|
||||
gc_marker = m->gc_marker;
|
||||
|
||||
while ((u = m->gc_unit_queue)) {
|
||||
while ((u = LIST_POP(gc_queue, m->gc_unit_queue))) {
|
||||
assert(u->in_gc_queue);
|
||||
|
||||
unit_gc_sweep(u, gc_marker);
|
||||
|
||||
LIST_REMOVE(gc_queue, m->gc_unit_queue, u);
|
||||
u->in_gc_queue = false;
|
||||
|
||||
n++;
|
||||
@@ -1392,10 +1389,8 @@ static unsigned manager_dispatch_gc_job_queue(Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((j = m->gc_job_queue)) {
|
||||
while ((j = LIST_POP(gc_queue, m->gc_job_queue))) {
|
||||
assert(j->in_gc_queue);
|
||||
|
||||
LIST_REMOVE(gc_queue, m->gc_job_queue, j);
|
||||
j->in_gc_queue = false;
|
||||
|
||||
n++;
|
||||
@@ -1459,11 +1454,10 @@ static unsigned manager_dispatch_stop_when_unneeded_queue(Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((u = m->stop_when_unneeded_queue)) {
|
||||
while ((u = LIST_POP(stop_when_unneeded_queue, m->stop_when_unneeded_queue))) {
|
||||
_cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
|
||||
assert(u->in_stop_when_unneeded_queue);
|
||||
LIST_REMOVE(stop_when_unneeded_queue, m->stop_when_unneeded_queue, u);
|
||||
u->in_stop_when_unneeded_queue = false;
|
||||
|
||||
n++;
|
||||
@@ -1500,12 +1494,11 @@ static unsigned manager_dispatch_start_when_upheld_queue(Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((u = m->start_when_upheld_queue)) {
|
||||
while ((u = LIST_POP(start_when_upheld_queue, m->start_when_upheld_queue))) {
|
||||
_cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
Unit *culprit = NULL;
|
||||
|
||||
assert(u->in_start_when_upheld_queue);
|
||||
LIST_REMOVE(start_when_upheld_queue, m->start_when_upheld_queue, u);
|
||||
u->in_start_when_upheld_queue = false;
|
||||
|
||||
n++;
|
||||
@@ -1542,12 +1535,11 @@ static unsigned manager_dispatch_stop_when_bound_queue(Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((u = m->stop_when_bound_queue)) {
|
||||
while ((u = LIST_POP(stop_when_bound_queue, m->stop_when_bound_queue))) {
|
||||
_cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||
Unit *culprit = NULL;
|
||||
|
||||
assert(u->in_stop_when_bound_queue);
|
||||
LIST_REMOVE(stop_when_bound_queue, m->stop_when_bound_queue, u);
|
||||
u->in_stop_when_bound_queue = false;
|
||||
|
||||
n++;
|
||||
@@ -2177,13 +2169,12 @@ static int manager_dispatch_target_deps_queue(Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((u = m->target_deps_queue)) {
|
||||
while ((u = LIST_POP(target_deps_queue, m->target_deps_queue))) {
|
||||
_cleanup_free_ Unit **targets = NULL;
|
||||
int n_targets;
|
||||
|
||||
assert(u->in_target_deps_queue);
|
||||
|
||||
LIST_REMOVE(target_deps_queue, u->manager->target_deps_queue, u);
|
||||
u->in_target_deps_queue = false;
|
||||
|
||||
/* Take an "atomic" snapshot of dependencies here, as the call below will likely modify the
|
||||
|
||||
+1
-2
@@ -288,9 +288,8 @@ void path_free_specs(Path *p) {
|
||||
|
||||
assert(p);
|
||||
|
||||
while ((s = p->specs)) {
|
||||
while ((s = LIST_POP(spec, p->specs))) {
|
||||
path_spec_unwatch(s);
|
||||
LIST_REMOVE(spec, p->specs, s);
|
||||
path_spec_done(s);
|
||||
free(s);
|
||||
}
|
||||
|
||||
+1
-2
@@ -51,8 +51,7 @@ void timer_free_values(Timer *t) {
|
||||
|
||||
assert(t);
|
||||
|
||||
while ((v = t->values)) {
|
||||
LIST_REMOVE(value, t->values, v);
|
||||
while ((v = LIST_POP(value, t->values))) {
|
||||
calendar_spec_free(v->calendar_spec);
|
||||
free(v);
|
||||
}
|
||||
|
||||
@@ -345,13 +345,11 @@ int sd_dhcp_lease_get_vendor_specific(sd_dhcp_lease *lease, const void **data, s
|
||||
}
|
||||
|
||||
static sd_dhcp_lease *dhcp_lease_free(sd_dhcp_lease *lease) {
|
||||
struct sd_dhcp_raw_option *option;
|
||||
|
||||
assert(lease);
|
||||
|
||||
while (lease->private_options) {
|
||||
struct sd_dhcp_raw_option *option = lease->private_options;
|
||||
|
||||
LIST_REMOVE(options, lease->private_options, option);
|
||||
|
||||
while ((option = LIST_POP(options, lease->private_options))) {
|
||||
free(option->data);
|
||||
free(option);
|
||||
}
|
||||
|
||||
+3
-6
@@ -907,8 +907,7 @@ static void manager_gc(Manager *m, bool drop_not_started) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((seat = m->seat_gc_queue)) {
|
||||
LIST_REMOVE(gc_queue, m->seat_gc_queue, seat);
|
||||
while ((seat = LIST_POP(gc_queue, m->seat_gc_queue))) {
|
||||
seat->in_gc_queue = false;
|
||||
|
||||
if (seat_may_gc(seat, drop_not_started)) {
|
||||
@@ -917,8 +916,7 @@ static void manager_gc(Manager *m, bool drop_not_started) {
|
||||
}
|
||||
}
|
||||
|
||||
while ((session = m->session_gc_queue)) {
|
||||
LIST_REMOVE(gc_queue, m->session_gc_queue, session);
|
||||
while ((session = LIST_POP(gc_queue, m->session_gc_queue))) {
|
||||
session->in_gc_queue = false;
|
||||
|
||||
/* First, if we are not closing yet, initiate stopping. */
|
||||
@@ -934,8 +932,7 @@ static void manager_gc(Manager *m, bool drop_not_started) {
|
||||
}
|
||||
}
|
||||
|
||||
while ((user = m->user_gc_queue)) {
|
||||
LIST_REMOVE(gc_queue, m->user_gc_queue, user);
|
||||
while ((user = LIST_POP(gc_queue, m->user_gc_queue))) {
|
||||
user->in_gc_queue = false;
|
||||
|
||||
/* First step: queue stop jobs */
|
||||
|
||||
@@ -254,8 +254,7 @@ static void manager_gc(Manager *m, bool drop_not_started) {
|
||||
|
||||
assert(m);
|
||||
|
||||
while ((machine = m->machine_gc_queue)) {
|
||||
LIST_REMOVE(gc_queue, m->machine_gc_queue, machine);
|
||||
while ((machine = LIST_POP(gc_queue, m->machine_gc_queue))) {
|
||||
machine->in_gc_queue = false;
|
||||
|
||||
/* First, if we are not closing yet, initiate stopping */
|
||||
|
||||
+1
-2
@@ -257,8 +257,7 @@ static void context_save_and_clear(Context *c) {
|
||||
|
||||
assert(c);
|
||||
|
||||
while ((i = c->write_queue)) {
|
||||
LIST_REMOVE(queue, c->write_queue, i);
|
||||
while ((i = LIST_POP(queue, c->write_queue))) {
|
||||
(void) save_state_write_one(i);
|
||||
write_queue_item_free(i);
|
||||
}
|
||||
|
||||
@@ -3689,8 +3689,7 @@ bool dissected_image_verity_sig_ready(const DissectedImage *image, PartitionDesi
|
||||
MountOptions* mount_options_free_all(MountOptions *options) {
|
||||
MountOptions *m;
|
||||
|
||||
while ((m = options)) {
|
||||
LIST_REMOVE(mount_options, options, m);
|
||||
while ((m = LIST_POP(mount_options, options))) {
|
||||
free(m->options);
|
||||
free(m);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user