mirror of
https://github.com/systemd/systemd.git
synced 2025-02-24 17:57:34 +03:00
networkd: reorder conditional to handle errors first
This also avoid the implicit assumption that if r is not -ENOENT, 0, or 1, it must be negative. The compiler cannot know this.
This commit is contained in:
parent
00fb6caf70
commit
6923020ec1
@ -338,7 +338,9 @@ static int routing_policy_rule_add(Manager *m, const RoutingPolicyRule *in, Rout
|
||||
|
||||
rule->manager = m;
|
||||
existing = TAKE_PTR(rule);
|
||||
} else if (r == 0) {
|
||||
} else if (r < 0)
|
||||
return r;
|
||||
else if (r == 0) {
|
||||
/* Take over a foreign rule. */
|
||||
r = set_ensure_put(&m->rules, &routing_policy_rule_hash_ops, existing);
|
||||
if (r < 0)
|
||||
@ -346,11 +348,7 @@ static int routing_policy_rule_add(Manager *m, const RoutingPolicyRule *in, Rout
|
||||
assert(r > 0);
|
||||
|
||||
set_remove(m->rules_foreign, existing);
|
||||
} else if (r == 1) {
|
||||
/* Already exists, do nothing. */
|
||||
;
|
||||
} else
|
||||
return r;
|
||||
} /* else r > 0: already exists, do nothing. */
|
||||
|
||||
if (ret)
|
||||
*ret = existing;
|
||||
|
Loading…
x
Reference in New Issue
Block a user