From c06a4680946c6be0f19342dfd2737bebee8690bd Mon Sep 17 00:00:00 2001 From: Karl DeBisschop Date: Tue, 2 Mar 2004 05:01:19 +0000 Subject: [PATCH] fix div by zero error when swaptotal is zero (Flo Gleixner) git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@834 f882894a-f735-0410-b71e-b25c423dba1c --- AUTHORS | 3 ++- plugins/check_swap.c | 9 ++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/AUTHORS b/AUTHORS index 5c8844f..65f9647 100644 --- a/AUTHORS +++ b/AUTHORS @@ -101,4 +101,5 @@ Matt Pounsett Shawn Wills Ralph Rye Jason Martin -Jon Hallett \ No newline at end of file +Jon Hallett +Flo Gleixner diff --git a/plugins/check_swap.c b/plugins/check_swap.c index fe792e8..1155ed0 100644 --- a/plugins/check_swap.c +++ b/plugins/check_swap.c @@ -73,8 +73,8 @@ main (int argc, char **argv) bindtextdomain (PACKAGE, LOCALEDIR); textdomain (PACKAGE); - status = strdup(""); - perf = strdup(""); + status = strdup (""); + perf = strdup (""); if (process_arguments (argc, argv) != OK) usage (_("Invalid command arguments supplied\n")); @@ -90,7 +90,10 @@ main (int argc, char **argv) used_swap += dskused; free_swap += dskfree; if (allswaps) { - percent = 100 * (((double) dskused) / ((double) dsktotal)); + if (dsktotal == 0) + percent=100.0; + else + percent = 100 * (((double) dskused) / ((double) dsktotal)); result = max_state (result, check_swap (percent, dskfree)); if (verbose) asprintf (&status, "%s [%llu (%d%%)]", status, dskfree, 100 - percent); -- 2.30.2