basic + fundamental: Clean up includes

Split out of #37344.
This commit is contained in:
Daan De Meyer
2025-05-25 10:06:07 +02:00
parent e6e6131a2c
commit 0c15577abe
262 changed files with 628 additions and 1207 deletions
+36
View File
@@ -1,5 +1,7 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include <stdlib.h>
#include "alloc-util.h"
#include "sort-util.h"
@@ -28,6 +30,40 @@ void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
return NULL;
}
void* bsearch_safe(const void *key, const void *base, size_t nmemb, size_t size, comparison_fn_t compar) {
/**
* Normal bsearch requires base to be nonnull. Here were require
* that only if nmemb > 0.
*/
if (nmemb <= 0)
return NULL;
assert(base);
return bsearch(key, base, nmemb, size, compar);
}
void qsort_safe(void *base, size_t nmemb, size_t size, comparison_fn_t compar) {
/**
* Normal qsort requires base to be nonnull. Here were require
* that only if nmemb > 0.
*/
if (nmemb <= 1)
return;
assert(base);
qsort(base, nmemb, size, compar);
}
void qsort_r_safe(void *base, size_t nmemb, size_t size, comparison_userdata_fn_t compar, void *userdata) {
if (nmemb <= 1)
return;
assert(base);
qsort_r(base, nmemb, size, compar, userdata);
}
int cmp_int(const int *a, const int *b) {
return CMP(*a, *b);
}