From: Karel Zak Date: Tue, 1 Jul 2014 11:25:46 +0000 (+0200) Subject: cfdisk: fix division by zero [clang-analyze] X-Git-Tag: v2.25-rc2~7 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a1da27a8c038d78014bee702dca9a3dc32bf1133;p=thirdparty%2Futil-linux.git cfdisk: fix division by zero [clang-analyze] Signed-off-by: Karel Zak --- diff --git a/disk-utils/cfdisk.c b/disk-utils/cfdisk.c index 0e4638f102..b79579ee41 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)