diff options
author | Karel Zak | 2014-07-01 13:25:46 +0200 |
---|---|---|
committer | Karel Zak | 2014-07-01 13:25:46 +0200 |
commit | a1da27a8c038d78014bee702dca9a3dc32bf1133 (patch) | |
tree | 707b3f49d51f44fc8be32d70da4744143052df24 /disk-utils/cfdisk.c | |
parent | libblkid: fix probe_ddf() [clang-analyze] (diff) | |
download | kernel-qcow2-util-linux-a1da27a8c038d78014bee702dca9a3dc32bf1133.tar.gz kernel-qcow2-util-linux-a1da27a8c038d78014bee702dca9a3dc32bf1133.tar.xz kernel-qcow2-util-linux-a1da27a8c038d78014bee702dca9a3dc32bf1133.zip |
cfdisk: fix division by zero [clang-analyze]
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'disk-utils/cfdisk.c')
-rw-r--r-- | disk-utils/cfdisk.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/disk-utils/cfdisk.c b/disk-utils/cfdisk.c index 0e4638f10..b79579ee4 100644 --- a/disk-utils/cfdisk.c +++ b/disk-utils/cfdisk.c @@ -796,6 +796,9 @@ static size_t menuitem_get_line(struct cfdisk *cf, size_t idx) size_t len = m->width + 4 + MENU_PADDING; /* item width */ size_t items = COLS / len; /* items per line */ + if (items == 0) + return 0; + return MENU_START_LINE + ((idx / items)); } } @@ -814,6 +817,9 @@ static int menuitem_get_column(struct cfdisk *cf, size_t idx) COLS % len : /* - multi-line menu */ COLS - (cf->menu->nitems * len); /* - one line menu */ + if (items == 0) + return 0; /* hmm... no space */ + extra += MENU_PADDING; /* add padding after last item to extra */ if (idx < items) |