From cdda8d57349d00b1c19613b72238410f2aa2902b Mon Sep 17 00:00:00 2001 From: Gunnar Beutner Date: Fri, 11 Apr 2014 15:47:26 +0200 Subject: [PATCH] Fix external commands which take no arguments. Fixes #5998 --- lib/icinga/externalcommandprocessor.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/icinga/externalcommandprocessor.cpp b/lib/icinga/externalcommandprocessor.cpp index 23d829d48..01b3468d9 100644 --- a/lib/icinga/externalcommandprocessor.cpp +++ b/lib/icinga/externalcommandprocessor.cpp @@ -122,18 +122,19 @@ void ExternalCommandProcessor::Execute(double time, const String& command, const std::vector realArguments; realArguments.resize(argnum); - if (arguments.size() > 0) + if (argnum > 0) { std::copy(arguments.begin(), arguments.begin() + argnum - 1, realArguments.begin()); - String last_argument; - for (int i = argnum - 1; i < arguments.size(); i++) { - if (!last_argument.IsEmpty()) - last_argument += ";"; + String last_argument; + for (int i = argnum - 1; i < arguments.size(); i++) { + if (!last_argument.IsEmpty()) + last_argument += ";"; - last_argument += arguments[i]; - } + last_argument += arguments[i]; + } - realArguments[argnum - 1] = last_argument; + realArguments[argnum - 1] = last_argument; + } OnNewExternalCommand(time, command, realArguments); -- 2.50.0