mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-11-17 08:38:42 +00:00
Nest: Several assumptions to tame the static analyzer
This commit is contained in:
parent
bbe49ae569
commit
0fa8bf91cd
@ -202,7 +202,7 @@ nexthop__same(struct nexthop *x, struct nexthop *y)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
nexthop_compare_node(const struct nexthop *x, const struct nexthop *y)
|
nexthop_compare_node(const struct nexthop *x, const struct nexthop *y)
|
||||||
{
|
{
|
||||||
int r;
|
int r;
|
||||||
|
|
||||||
@ -278,18 +278,22 @@ nexthop_merge(struct nexthop *x, struct nexthop *y, int rx, int ry, int max, lin
|
|||||||
while ((x || y) && max--)
|
while ((x || y) && max--)
|
||||||
{
|
{
|
||||||
int cmp = nexthop_compare_node(x, y);
|
int cmp = nexthop_compare_node(x, y);
|
||||||
|
|
||||||
if (cmp < 0)
|
if (cmp < 0)
|
||||||
{
|
{
|
||||||
|
ASSUME(x);
|
||||||
*n = rx ? x : nexthop_copy_node(x, lp);
|
*n = rx ? x : nexthop_copy_node(x, lp);
|
||||||
x = x->next;
|
x = x->next;
|
||||||
}
|
}
|
||||||
else if (cmp > 0)
|
else if (cmp > 0)
|
||||||
{
|
{
|
||||||
|
ASSUME(y);
|
||||||
*n = ry ? y : nexthop_copy_node(y, lp);
|
*n = ry ? y : nexthop_copy_node(y, lp);
|
||||||
y = y->next;
|
y = y->next;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
ASSUME(x && y);
|
||||||
*n = rx ? x : (ry ? y : nexthop_copy_node(x, lp));
|
*n = rx ? x : (ry ? y : nexthop_copy_node(x, lp));
|
||||||
x = x->next;
|
x = x->next;
|
||||||
y = y->next;
|
y = y->next;
|
||||||
|
Loading…
Reference in New Issue
Block a user