summaryrefslogtreecommitdiffstats
path: root/lib/perfdata.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/perfdata.c')
-rw-r--r--lib/perfdata.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/perfdata.c b/lib/perfdata.c
index f4eaf843..e3710ec7 100644
--- a/lib/perfdata.c
+++ b/lib/perfdata.c
@@ -251,7 +251,16 @@ char *mp_range_to_string(const mp_range input) {
251 if (input.start_infinity) { 251 if (input.start_infinity) {
252 asprintf(&result, "%s~:", result); 252 asprintf(&result, "%s~:", result);
253 } else { 253 } else {
254 asprintf(&result, "%s%s:", result, pd_value_to_string(input.start)); 254 // check for zeroes, so we can use the short form
255 if ((input.start.type == PD_TYPE_NONE) ||
256 ((input.start.type == PD_TYPE_INT) && (input.start.pd_int == 0)) ||
257 ((input.start.type == PD_TYPE_UINT) && (input.start.pd_uint == 0)) ||
258 ((input.start.type == PD_TYPE_DOUBLE) && (input.start.pd_double == 0))){
259 // nothing to do here
260 } else {
261 // Start value is an actual value
262 asprintf(&result, "%s%s:", result, pd_value_to_string(input.start));
263 }
255 } 264 }
256 265
257 if (!input.end_infinity) { 266 if (!input.end_infinity) {