This is an automated email from the ASF dual-hosted git repository. radu pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-bundle-tracker.git
commit bef6415e051f11dcf0054bf85efae6c9db65dc41 Author: Radu Cotescu <[email protected]> AuthorDate: Thu Apr 9 18:04:53 2020 +0200 SLING-9350 - Recompile scripts which hold a stale ScriptEngine reference --- .../org/apache/sling/scripting/bundle/tracker/internal/Script.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/apache/sling/scripting/bundle/tracker/internal/Script.java b/src/main/java/org/apache/sling/scripting/bundle/tracker/internal/Script.java index c541e59..bd274b3 100644 --- a/src/main/java/org/apache/sling/scripting/bundle/tracker/internal/Script.java +++ b/src/main/java/org/apache/sling/scripting/bundle/tracker/internal/Script.java @@ -76,10 +76,11 @@ class Script extends AbstractBundledRenderUnit { @Override public void eval(@NotNull ScriptEngine scriptEngine, @NotNull ScriptContext context) throws ScriptException { try { - if (scriptEngine instanceof Compilable && compiledScript == null) { + if (scriptEngine instanceof Compilable && + (compiledScript == null || !scriptEngine.getFactory().equals(compiledScript.getEngine().getFactory()))) { compilationLock.lock(); try { - if (compiledScript == null) { + if (compiledScript == null || !scriptEngine.getFactory().equals(compiledScript.getEngine().getFactory())) { compiledScript = ((Compilable) scriptEngine) .compile(new ScriptNameAwareReader(new StringReader(getSourceCode()), getName()));
