From: Gunnar Beutner Date: Sat, 16 Nov 2013 23:05:31 +0000 (+0100) Subject: Accept invalid performance data. X-Git-Tag: v0.0.5~67 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f9b107d0bff6c762fc607d60e0238f7a5a9f7928;p=icinga2 Accept invalid performance data. Refs #5082 --- diff --git a/lib/icinga/perfdatavalue.cpp b/lib/icinga/perfdatavalue.cpp index c00d1b42b..549a7cdcb 100644 --- a/lib/icinga/perfdatavalue.cpp +++ b/lib/icinga/perfdatavalue.cpp @@ -93,16 +93,16 @@ Value PerfdataValue::Parse(const String& perfdata) BOOST_THROW_EXCEPTION(std::invalid_argument("Invalid performance data unit: " + unit)); } - if (tokens.size() > 1 && tokens[1] != "U") + if (tokens.size() > 1 && tokens[1] != "U" && tokens[1] != "") warn = Convert::ToDouble(tokens[1]); - if (tokens.size() > 2 && tokens[2] != "U") + if (tokens.size() > 2 && tokens[2] != "U" && tokens[2] != "") crit = Convert::ToDouble(tokens[2]); - if (tokens.size() > 3 && tokens[3] != "U") + if (tokens.size() > 3 && tokens[3] != "U" && tokens[3] != "") min = Convert::ToDouble(tokens[3]); - if (tokens.size() > 4 && tokens[4] != "U") + if (tokens.size() > 4 && tokens[4] != "U" && tokens[4] != "") max = Convert::ToDouble(tokens[4]); return make_shared(value, counter, unit, warn, crit, min, max);