parted/parted-3.0-libparted-fix-snap-radius-so-that-it-is-using-half.patch
Brian C. Lane 3cb85c39f2 Update to parted v3.0
This changes the spec to run autoreconf so that patches to .am files
will be picked up without having to resort to hand-patching .in files.
This should make parted more maintainable in the future.

Add patch to Fix snap radius and don't allow values < 1 (#665496)
Add tests for the snap radius fix.
2011-06-28 13:33:03 -07:00

35 lines
1.2 KiB
Diff

From 18e727d492933ae1ebb16961e1df553f9299af8b Mon Sep 17 00:00:00 2001
From: Brian C. Lane <bcl@redhat.com>
Date: Tue, 21 Jun 2011 10:44:15 -0700
Subject: [PATCH 1/4] libparted: fix snap radius so that it is using half
(#665496)
The snap radius didn't match the documentation, it has been using +/-
unit size instead +/- 0.5 * unit (eg. 500KB for a MB unit). This caused
problems when specifying 1MB, 1GB, etc. as a partition start or end
resulting in partitions being created that were nowhere near the
specified size.
* libparted/unit.c (ped_unit_parse_custom): divide radius by 2
This addresses http://bugzilla.redhat.com/665496
---
libparted/unit.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/libparted/unit.c b/libparted/unit.c
index dc4205b..c2921e3 100644
--- a/libparted/unit.c
+++ b/libparted/unit.c
@@ -533,7 +533,7 @@ ped_unit_parse_custom (const char* str, const PedDevice* dev, PedUnit unit,
}
unit_size = ped_unit_get_size (dev, unit);
- radius = ped_div_round_up (unit_size, dev->sector_size) - 1;
+ radius = (ped_div_round_up (unit_size, dev->sector_size) / 2) - 1;
if (radius < 0)
radius = 0;
/* If the user specifies units in a power of 2, e.g., 4MiB, as in
--
1.7.4.4