[parted-devel] [PATCH 3/4] Fix resizepart iec unit end sector

Phillip Susi psusi at ubuntu.com
Mon May 7 18:55:53 BST 2018


Fix resizepart to adjust the end to be -1 sector when using iec
power of 2 units so that the next partition can start immediately
following the new end, just like mkpart does.
---
 NEWS            | 4 ++++
 parted/parted.c | 5 ++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/NEWS b/NEWS
index a2e077a..659119c 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,10 @@ GNU parted NEWS                                    -*- outline -*-
 
 ** Bug Fixes
 
+  Fix resizepart to adjust the end to be -1 sector when using iec
+  power of 2 units so that the next partition can start immediately
+  following the new end, just like mkpart does.
+
   Fix a udev cookie leak when using resizepart on device-mapper devices.
 
   Fix a gettext crash/error sometimes when using localized languages.
diff --git a/parted/parted.c b/parted/parted.c
index b5e3b97..1d8ceeb 100644
--- a/parted/parted.c
+++ b/parted/parted.c
@@ -1567,8 +1567,11 @@ do_resizepart (PedDevice** dev, PedDisk** diskp)
 
         start = part->geom.start;
         end = oldend = part->geom.end;
-        if (!command_line_get_sector (_("End?"), *dev, &end, &range_end, NULL))
+        char *end_input;
+        if (!command_line_get_sector (_("End?"), *dev, &end, &range_end, &end_input))
                 goto error;
+        _adjust_end_if_iec(&start, &end, range_end, end_input);
+        free(end_input);
         /* Do not move start of the partition */
         constraint = constraint_from_start_end_fixed_start (*dev, start, range_end);
         if (!ped_disk_set_partition_geom (disk, part, constraint,
-- 
2.7.4




More information about the parted-devel mailing list