From: Karel Zak Date: Tue, 10 May 2016 08:52:31 +0000 (+0200) Subject: libfdisk: use fdisk_add_partition() for unused partno X-Git-Tag: v2.29-rc1~253 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a3a125b9227be82d84941062feaf3ddfde8265f7;p=thirdparty%2Futil-linux.git libfdisk: use fdisk_add_partition() for unused partno For example: sfdisk -N may address unused partition. In this case we need to redirect from fdisk_set_partition() to fdisk_add_partition() and follow default setting (used all free space). Signed-off-by: Karel Zak --- diff --git a/libfdisk/src/partition.c b/libfdisk/src/partition.c index 4fbd1e4681..a98620b041 100644 --- a/libfdisk/src/partition.c +++ b/libfdisk/src/partition.c @@ -1235,6 +1235,11 @@ int fdisk_set_partition(struct fdisk_context *cxt, size_t partno, pa->fs_probed = 0; + if (!fdisk_is_partition_used(cxt, partno)) { + pa->partno = partno; + return fdisk_add_partition(cxt, pa, NULL); + } + if (pa->resize || fdisk_partition_has_start(pa) || fdisk_partition_has_size(pa)) { xpa = __copy_partition(pa); xpa->movestart = 0;