summaryrefslogtreecommitdiffstats
path: root/disk-utils/fdisk-menu.c
diff options
context:
space:
mode:
authorKarel Zak2017-07-14 11:08:54 +0200
committerKarel Zak2017-07-14 11:34:55 +0200
commitfadd8e08774f872779690fa126b091d068f61d4d (patch)
tree3e01f2beed96089799bf50b21943e08dbc7a7ba9 /disk-utils/fdisk-menu.c
parentlibfdisk: use BLKPG ioctls to inform kernel about changes (diff)
downloadkernel-qcow2-util-linux-fadd8e08774f872779690fa126b091d068f61d4d.tar.gz
kernel-qcow2-util-linux-fadd8e08774f872779690fa126b091d068f61d4d.tar.xz
kernel-qcow2-util-linux-fadd8e08774f872779690fa126b091d068f61d4d.zip
fdisk: use fdisk_reread_changes()
Let's make fdisk usable for disks where some partitions are mounted. Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'disk-utils/fdisk-menu.c')
-rw-r--r--disk-utils/fdisk-menu.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/disk-utils/fdisk-menu.c b/disk-utils/fdisk-menu.c
index 9245bac8a..8ad0fc1a5 100644
--- a/disk-utils/fdisk-menu.c
+++ b/disk-utils/fdisk-menu.c
@@ -582,7 +582,11 @@ static int generic_menu_cb(struct fdisk_context **cxt0,
if (fdisk_get_parent(cxt))
break; /* nested PT, don't leave */
fdisk_info(cxt, _("The partition table has been altered."));
- rc = fdisk_reread_partition_table(cxt);
+
+ if (device_is_used)
+ rc = fdisk_reread_changes(cxt, original_layout);
+ else
+ rc = fdisk_reread_partition_table(cxt);
if (!rc)
rc = fdisk_deassign_device(cxt, 0);
/* fallthrough */