util-linux: use qsort instead of qsort_r to fix compile error with musl
authorFelix Fietkau <nbd@openwrt.org>
Mon, 9 Jun 2014 13:47:48 +0000 (13:47 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Mon, 9 Jun 2014 13:47:48 +0000 (13:47 +0000)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 41059

package/utils/util-linux/patches/100-fdisk_use_qsort.patch [new file with mode: 0644]

diff --git a/package/utils/util-linux/patches/100-fdisk_use_qsort.patch b/package/utils/util-linux/patches/100-fdisk_use_qsort.patch
new file mode 100644 (file)
index 0000000..5ed4806
--- /dev/null
@@ -0,0 +1,36 @@
+--- a/libfdisk/src/sun.c
++++ b/libfdisk/src/sun.c
+@@ -361,10 +361,10 @@ static void fetch_sun(struct fdisk_conte
+       }
+ }
+-static int verify_sun_cmp(int *a, int *b, void *data)
+-{
+-    unsigned int *verify_sun_starts = (unsigned int *) data;
++static unsigned int *verify_sun_starts;
++static int verify_sun_cmp(int *a, int *b)
++{
+     if (*a == -1)
+           return 1;
+     if (*b == -1)
+@@ -379,7 +379,6 @@ static int sun_verify_disklabel(struct f
+     uint32_t starts[SUN_MAXPARTITIONS], lens[SUN_MAXPARTITIONS], start, stop;
+     uint32_t i,j,k,starto,endo;
+     int array[SUN_MAXPARTITIONS];
+-    unsigned int *verify_sun_starts;
+     assert(cxt);
+     assert(cxt->label);
+@@ -427,9 +426,8 @@ static int sun_verify_disklabel(struct f
+         else
+             array[i] = -1;
+     }
+-    qsort_r(array,ARRAY_SIZE(array),sizeof(array[0]),
+-        (int (*)(const void *,const void *,void *)) verify_sun_cmp,
+-        verify_sun_starts);
++    qsort(array,ARRAY_SIZE(array),sizeof(array[0]),
++        (int (*)(const void *,const void *)) verify_sun_cmp);
+     if (array[0] == -1) {
+       fdisk_info(cxt, _("No partitions defined."));