diff options
Diffstat (limited to 'lib/perfdata.c')
| -rw-r--r-- | lib/perfdata.c | 11 |
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) { |
