From: Karel Zak Date: Fri, 7 Mar 2014 12:43:39 +0000 (+0100) Subject: libfdisk: don't count special whole-disk partitions X-Git-Tag: v2.25-rc1~457 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c1c58b492fed457c81f6c5aab5689b40c8b1ec6f;p=thirdparty%2Futil-linux.git libfdisk: don't count special whole-disk partitions Signed-off-by: Karel Zak --- diff --git a/libfdisk/src/fdiskP.h b/libfdisk/src/fdiskP.h index 6d067fbf5e..cde75c1fa4 100644 --- a/libfdisk/src/fdiskP.h +++ b/libfdisk/src/fdiskP.h @@ -189,6 +189,7 @@ struct fdisk_partition { end_follow_default : 1, /* use default end */ freespace : 1, /* this is free space */ container : 1, /* container partition (e.g. extended partition) */ + wholedisk : 1, /* special system partition */ used : 1; /* partition already used */ }; diff --git a/libfdisk/src/table.c b/libfdisk/src/table.c index ae1a2cf5de..dfa5dc80e4 100644 --- a/libfdisk/src/table.c +++ b/libfdisk/src/table.c @@ -486,7 +486,7 @@ int fdisk_get_freespaces(struct fdisk_context *cxt, struct fdisk_table **tb) /* analyze gaps between partitions */ while (rc == 0 && fdisk_table_next_partition(parts, &itr, &pa) == 0) { - if (!pa->used || fdisk_partition_is_nested(pa)) + if (!pa->used || pa->wholedisk || fdisk_partition_is_nested(pa)) continue; DBG(LABEL, dbgprint("freespace analyze: partno=%zu, start=%ju, end=%ju", pa->partno, pa->start, pa->end));