blob: ad52b32be60ee15598316afa46bc1d2e78ebb9f3 [file] [log] [blame]
From c4730f108e4fa9869739a457d55ba19d450675e2 Mon Sep 17 00:00:00 2001
From: Petr Uzel <petr.uzel@suse.cz>
Date: Mon, 19 Sep 2011 15:29:12 +0200
Subject: [PATCH] sfdisk: get_disksize() returns long long
unsigned long is 4 bytes long on i586, which is not enough for big
HDD's with 512B sectors. Use unsigned long long, which is 8 bytes.
Signed-off-by: Petr Uzel <petr.uzel@suse.cz>
---
fdisk/sfdisk.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/fdisk/sfdisk.c b/fdisk/sfdisk.c
index 820e23e..9c94185 100644
--- a/fdisk/sfdisk.c
+++ b/fdisk/sfdisk.c
@@ -928,7 +928,7 @@ unitsize(int format) {
}
}
-static unsigned long
+static unsigned long long
get_disksize(int format) {
if (B.total_size && leave_last)
/* don't use last cylinder (--leave-last option) */
@@ -1266,7 +1266,7 @@ partitions_ok(struct disk_desc *z) {
/* Do they start past zero and end before end-of-disk? */
{
- unsigned long ds = get_disksize(F_SECTOR);
+ unsigned long long ds = get_disksize(F_SECTOR);
for (p = partitions; p < partitions + partno; p++)
if (p->size) {
if (p->start == 0) {
@@ -1925,7 +1925,7 @@ first_free(int pno, int is_extended, struct part_desc *ep, int format,
static unsigned long
max_length(int pno, int is_extended, struct part_desc *ep, int format,
unsigned long start, struct disk_desc *z) {
- unsigned long fu;
+ unsigned long long fu;
unsigned long unit = unitsize(format);
struct part_desc *partitions = &(z->partitions[0]), *pp = 0;
--
1.8.1.5-x20-1