summaryrefslogtreecommitdiff
path: root/src/command_manager.cc
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2018-05-26 13:07:03 +1000
committerMaxime Coste <mawww@kakoune.org>2018-05-26 21:31:17 +1000
commit68fb3ba88fc36982f583bd09189c3af4b0b00521 (patch)
treeda51d9bc9967456282652507263e915f1083f8b1 /src/command_manager.cc
parent54b62cbef7a534fed6278cc42c4df1f9ddc6b57a (diff)
Rework `fail` command not to display command call stack
`fail` triggers "expected" errors, and hence should just display the provided message.
Diffstat (limited to 'src/command_manager.cc')
-rw-r--r--src/command_manager.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/command_manager.cc b/src/command_manager.cc
index 9cf0c805..94182f4d 100644
--- a/src/command_manager.cc
+++ b/src/command_manager.cc
@@ -425,10 +425,15 @@ void CommandManager::execute_single_command(CommandParameters params,
command_it->value.param_desc);
command_it->value.func(parameter_parser, context, shell_context);
}
+ catch (failure& error)
+ {
+ throw;
+ }
catch (runtime_error& error)
{
- throw runtime_error(format("{}:{}: '{}' {}", pos.line+1, pos.column+1,
- params[0], error.what()));
+ error.set_what(format("{}:{}: '{}' {}", pos.line+1, pos.column+1,
+ params[0], error.what()));
+ throw;
}
}