local-addresses: always sort and dedup even if addresses are not requested
Otherwise, the return value may different when ret is NULL or not.
This commit is contained in:
@@ -168,11 +168,11 @@ int local_addresses(
|
||||
n_list++;
|
||||
};
|
||||
|
||||
if (ret) {
|
||||
typesafe_qsort(list, n_list, address_compare);
|
||||
suppress_duplicates(list, &n_list);
|
||||
typesafe_qsort(list, n_list, address_compare);
|
||||
suppress_duplicates(list, &n_list);
|
||||
|
||||
if (ret)
|
||||
*ret = TAKE_PTR(list);
|
||||
}
|
||||
|
||||
return (int) n_list;
|
||||
}
|
||||
@@ -370,11 +370,11 @@ int local_gateways(
|
||||
}
|
||||
}
|
||||
|
||||
if (ret) {
|
||||
typesafe_qsort(list, n_list, address_compare);
|
||||
suppress_duplicates(list, &n_list);
|
||||
typesafe_qsort(list, n_list, address_compare);
|
||||
suppress_duplicates(list, &n_list);
|
||||
|
||||
if (ret)
|
||||
*ret = TAKE_PTR(list);
|
||||
}
|
||||
|
||||
return (int) n_list;
|
||||
}
|
||||
@@ -515,11 +515,11 @@ int local_outbounds(
|
||||
}
|
||||
}
|
||||
|
||||
if (ret) {
|
||||
typesafe_qsort(list, n_list, address_compare);
|
||||
suppress_duplicates(list, &n_list);
|
||||
typesafe_qsort(list, n_list, address_compare);
|
||||
suppress_duplicates(list, &n_list);
|
||||
|
||||
if (ret)
|
||||
*ret = TAKE_PTR(list);
|
||||
}
|
||||
|
||||
return (int) n_list;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user