From: Karel Zak Date: Mon, 9 Sep 2013 08:57:50 +0000 (+0200) Subject: libfdisk: fix SIGFPE X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fheads%2Fstable%2Fv2.23;p=thirdparty%2Futil-linux.git libfdisk: fix SIGFPE #0 recount_geometry at libfdisk/src/alignment.c:143 #1 fdisk_discover_geometry at libfdisk/src/alignment.c:205 #2 fdisk_context_assign_device at libfdisk/src/context.c:173 #3 print_partition_table_from_option at fdisks/fdisk.c:924 References: https://bugzilla.redhat.com/show_bug.cgi?id=1005566 Signed-off-by: Karel Zak --- diff --git a/libfdisk/src/alignment.c b/libfdisk/src/alignment.c index ac44e73c11..4d4ab4804b 100644 --- a/libfdisk/src/alignment.c +++ b/libfdisk/src/alignment.c @@ -193,11 +193,12 @@ int fdisk_discover_geometry(struct fdisk_context *cxt) /* what the kernel/bios thinks the geometry is */ blkdev_get_geometry(cxt->dev_fd, &h, &s); - if (!h && !s) { - /* unable to discover geometry, use default values */ - s = 63; + + /* defaults */ + if (!h) h = 255; - } + if (!s) + s = 63; /* obtained heads and sectors */ cxt->geom.heads = h;