From 2d9d4736d6dff90e8e644ba99cdaed1ff26ff66a Mon Sep 17 00:00:00 2001 From: Doug Kearns Date: Thu, 18 Dec 2008 01:33:48 +1100 Subject: [PATCH] improve user-command custom completer error handling --- common/content/commands.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/common/content/commands.js b/common/content/commands.js index 8d051049..c5d7c3ae 100644 --- a/common/content/commands.js +++ b/common/content/commands.js @@ -776,13 +776,20 @@ function Commands() //{{{ { try { - liberator.eval(completeFunc).call(completion, context, args) + var completer = liberator.eval(completeFunc); + + if (!(completer instanceof Function)) + throw new TypeError("User-defined custom completer '" + completeFunc + "' is not a function"); } catch (e) { // FIXME: should be pushed to the MOW liberator.echoerr("E117: Unknown function: " + completeFunc); + liberator.log(e); + return; } + + completer.call(completion, context, args) } }, replacementText: args.literalArg