From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10639 invoked by alias); 5 Nov 2007 17:13:55 -0000 Received: (qmail 10624 invoked by uid 9447); 5 Nov 2007 17:13:55 -0000 Date: Mon, 05 Nov 2007 17:13:00 -0000 Message-ID: <20071105171355.10622.qmail@sourceware.org> From: agk@sourceware.org To: lvm-devel@redhat.com, lvm2-cvs@sourceware.org Subject: LVM2/lib/display display.c Mailing-List: contact lvm2-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: lvm2-cvs-owner@sourceware.org X-SW-Source: 2007-11/txt/msg00009.txt.bz2 CVSROOT: /cvs/lvm2 Module name: LVM2 Changes by: agk@sourceware.org 2007-11-05 17:13:54 Modified files: lib/display : display.c Log message: attempt to fix human-readable unit output when number of sectors is odd Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/display/display.c.diff?cvsroot=lvm2&r1=1.81&r2=1.82 --- LVM2/lib/display/display.c 2007/11/05 02:10:39 1.81 +++ LVM2/lib/display/display.c 2007/11/05 17:13:54 1.82 @@ -186,17 +186,17 @@ return size_buf; } - if (s < 10) { + size *= UINT64_C(512); + + if (s < 10) byte = cmd->current_settings.unit_factor; - size *= UINT64_C(512); - } else { - size /= 2; + else { suffix = 1; if (cmd->current_settings.unit_type == 'H') units = UINT64_C(1000); else units = UINT64_C(1024); - byte = units * units * units * units * units; + byte = units * units * units * units * units * units; s = 0; while (size_str[s] && size < byte) s++, byte /= units;