summaryrefslogtreecommitdiffstats
path: root/libfdisk/src/label.c
diff options
context:
space:
mode:
authorKarel Zak2013-12-19 13:25:51 +0100
committerKarel Zak2014-03-11 11:35:13 +0100
commitd0059a249142c6d3d747ce0483651afe9900995d (patch)
treeb03c429d4b8a0c66162a0ef678ad48333ad4df2f /libfdisk/src/label.c
parentlibfdisk: remove tt stuff from API (diff)
downloadkernel-qcow2-util-linux-d0059a249142c6d3d747ce0483651afe9900995d.tar.gz
kernel-qcow2-util-linux-d0059a249142c6d3d747ce0483651afe9900995d.tar.xz
kernel-qcow2-util-linux-d0059a249142c6d3d747ce0483651afe9900995d.zip
libfdisk: clean up cylinder column
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'libfdisk/src/label.c')
-rw-r--r--libfdisk/src/label.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/libfdisk/src/label.c b/libfdisk/src/label.c
index 00b25ee29..d04363a1d 100644
--- a/libfdisk/src/label.c
+++ b/libfdisk/src/label.c
@@ -137,13 +137,20 @@ int fdisk_get_columns(struct fdisk_context *cxt, int all, int **cols, size_t *nc
if (!c)
return -ENOMEM;
for (n = 0, i = 0; i < cxt->label->ncolumns; i++) {
+ int id = cxt->label->columns[i].id;
+
if (!all &&
((fdisk_context_display_details(cxt) &&
(cxt->label->columns[i].flags & FDISK_COLFL_EYECANDY))
|| (!fdisk_context_display_details(cxt) &&
- (cxt->label->columns[i].flags & FDISK_COLFL_DETAIL))))
+ (cxt->label->columns[i].flags & FDISK_COLFL_DETAIL))
+ || (id == FDISK_COL_SECTORS &&
+ fdisk_context_use_cylinders(cxt))
+ || (id == FDISK_COL_CYLINDERS &&
+ !fdisk_context_use_cylinders(cxt))))
continue;
- c[n++] = cxt->label->columns[i].id;
+
+ c[n++] = id;
}
if (cols)
*cols = c;