manager: fix underflow in compare_device_remove_order

Use `int` instead of `uint` for scores becuase we want to result
to have negative interger values as well.

`uint` would cause integer underflow with unsigned arithmetic if
a_score is greater than b_score.
This commit is contained in:
Rahul Rajesh 2026-05-07 15:57:30 -04:00
parent 19b065bc4a
commit 9f8bde9048

View file

@ -8161,8 +8161,8 @@ compare_device_remove_order(const CList *a, const CList *b, const void *user_dat
/* priority: software AND dhcp first, then dhcp only
* then everything else,*/
uint a_score = a_has_dhcp ? (a_is_software ? 2 : 1) : 0;
uint b_score = b_has_dhcp ? (b_is_software ? 2 : 1) : 0;
int a_score = a_has_dhcp ? (a_is_software ? 2 : 1) : 0;
int b_score = b_has_dhcp ? (b_is_software ? 2 : 1) : 0;
return b_score - a_score;
}