X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2FConsole%2FExecutor.cc;h=ce2376f5403c97f2e0859683aae830db76372ba4;hb=084d18afd1abb3c6b19de612dbdf4dbc40ffd795;hp=8d7e59aeb00f5e6d6c716f2a7967a6f34ca78f5c;hpb=26610f603ebdd465307b9621f532c1fe19fd5571;p=senf.git diff --git a/senf/Utils/Console/Executor.cc b/senf/Utils/Console/Executor.cc index 8d7e59a..ce2376f 100644 --- a/senf/Utils/Console/Executor.cc +++ b/senf/Utils/Console/Executor.cc @@ -34,8 +34,6 @@ #include #include #include -#include -#include #include "Server.hh" //#include "Executor.mpp" @@ -172,7 +170,15 @@ prefix_ void senf::console::Executor::execute(std::ostream & output, prefix_ senf::console::GenericNode & senf::console::Executor::getNode(ParseCommandInfo const & command) { - return traverseNode(command.commandPath()); + try { + return traverseNode(command.commandPath()); + } + catch (InvalidPathException & ex) { + throw SyntaxErrorException("invalid path") << " '" << ex.path << "'"; + } + catch (InvalidDirectoryException & ex) { + throw SyntaxErrorException("invalid directory") << " '" << ex.path << "'"; + } } prefix_ void senf::console::Executor::exec(std::ostream & output,