Add exception handlers in places where scripts are invoked. This should lead to slightly nicer error messages.

This commit is contained in:
Twan van Laarhoven
2020-05-22 00:30:18 +02:00
parent 8b91cd8804
commit c9c7a958ae
5 changed files with 38 additions and 14 deletions
+7 -3
View File
@@ -246,9 +246,13 @@ String KeywordsPanel::runRefScript(int find_i) {
} else {
FOR_EACH(r, p->refer_scripts) {
if (i++ == find_i) {
Context& ctx = set->getContext();
ctx.setVariable(SCRIPT_VAR_input, to_script(param_s));
return r->script.invoke(ctx)->toString();
try {
Context& ctx = set->getContext();
ctx.setVariable(SCRIPT_VAR_input, to_script(param_s));
return r->script.invoke(ctx)->toString();
} catch (ScriptError const& e) {
handle_error(ScriptError(e.what() + _("\n in keyword refer script '") + r->name + _("'")));
}
}
}
}