--- libfdisk/src/sun.c.orig 2014-01-20 13:25:31.183846196 +0100 +++ libfdisk/src/sun.c 2014-02-11 03:26:16.153979437 +0100 @@ -48,6 +48,8 @@ static struct fdisk_parttype sun_parttyp { 0, NULL } }; +static unsigned int *verify_sun_starts; + /* return poiter buffer with on-disk data */ static inline struct sun_disklabel *self_disklabel(struct fdisk_context *cxt) { @@ -361,10 +363,8 @@ static void fetch_sun(struct fdisk_conte } } -static int verify_sun_cmp(int *a, int *b, void *data) +static int verify_sun_cmp(int *a, int *b) { - unsigned int *verify_sun_starts = (unsigned int *) data; - 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."));