From 5b454832a534dabeab42a645427457ae5107ced1 Mon Sep 17 00:00:00 2001 From: Reinhard Pointner Date: Fri, 19 Jul 2013 13:07:36 +0000 Subject: [PATCH] * executeScript function for include without _guarded{} --- .../filebot/cli/ScriptShell.lib.groovy | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/source/net/sourceforge/filebot/cli/ScriptShell.lib.groovy b/source/net/sourceforge/filebot/cli/ScriptShell.lib.groovy index a2134569..dfff330f 100644 --- a/source/net/sourceforge/filebot/cli/ScriptShell.lib.groovy +++ b/source/net/sourceforge/filebot/cli/ScriptShell.lib.groovy @@ -252,13 +252,23 @@ List.metaClass.sortBySimilarity = { prime, Closure toStringFunction = { obj -> o return delegate.sort{ a, b -> simetric.getSimilarity(toStringFunction(b), prime).compareTo(simetric.getSimilarity(toStringFunction(a), prime)) } } + // call scripts -def include(String input, Map bindings = [:], Object... args) { - // initialize default parameter - bindings.args = (args as List).flatten().findResults{ it as File } +def executeScript(String input, Map bindings = [:], Object... args) { + // apply parent script defines + def parameters = new javax.script.SimpleBindings(bindings != null ? _def : [:]) + parameters.putAll(bindings) + // initialize default parameter + parameters['args'] = (args as List).flatten().findResults{ it as File } + + // run given script + _shell.runScript(input, parameters) +} + +def include(String input, Map bindings = [:], Object... args) { // run given script and catch exceptions - _guarded { _shell.runScript(input, new javax.script.SimpleBindings(bindings ?: [:])) } + _guarded { executeScript(input, bindings, args) } }