summaryrefslogtreecommitdiff
path: root/c_src
diff options
context:
space:
mode:
Diffstat (limited to 'c_src')
-rw-r--r--c_src/tools-util.c7
-rw-r--r--c_src/tools-util.h1
2 files changed, 7 insertions, 1 deletions
diff --git a/c_src/tools-util.c b/c_src/tools-util.c
index a31adcb0..5a15f306 100644
--- a/c_src/tools-util.c
+++ b/c_src/tools-util.c
@@ -291,11 +291,16 @@ static int range_cmp(const void *_l, const void *_r)
return 0;
}
+void ranges_sort(ranges *r)
+{
+ sort(r->data, r->nr, sizeof(r->data[0]), range_cmp, NULL);
+}
+
void ranges_sort_merge(ranges *r)
{
ranges tmp = { 0 };
- sort(r->data, r->nr, sizeof(r->data[0]), range_cmp, NULL);
+ ranges_sort(r);
/* Merge contiguous ranges: */
darray_for_each(*r, i) {
diff --git a/c_src/tools-util.h b/c_src/tools-util.h
index 239d7e29..b8104002 100644
--- a/c_src/tools-util.h
+++ b/c_src/tools-util.h
@@ -117,6 +117,7 @@ static inline void range_add(ranges *data, u64 offset, u64 size)
}));
}
+void ranges_sort(ranges *);
void ranges_sort_merge(ranges *);
void ranges_roundup(ranges *, unsigned);
void ranges_rounddown(ranges *, unsigned);