Code

Don't divide by 0 when doing percentages (e.g. with the swap plugin).
[collectd.git] / src / daemon / plugin.c
index e7d4e8df2c801b7e6d0a0e6a8bdd4e120cedbf20..29716185db38b7ac59d9dc8a9bfe144812794c04 100644 (file)
@@ -2272,7 +2272,7 @@ int plugin_dispatch_multivalue (value_list_t const *template, /* {{{ */
                case DS_TYPE_GAUGE:
                        vl->values[0].gauge = va_arg (ap, gauge_t);
                        if (store_percentage)
-                               vl->values[0].gauge *= 100.0 / sum;
+                               vl->values[0].gauge *= sum ? (100.0 / sum) : 0;
                        break;
                case DS_TYPE_ABSOLUTE:
                        vl->values[0].absolute = va_arg (ap, absolute_t);