You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by su...@apache.org on 2020/08/09 03:37:40 UTC

[groovy] 02/02: GROOVY-9679: trivial tweak for better backward compatibility

This is an automated email from the ASF dual-hosted git repository.

sunlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit 21cf8b1de8e11b0ff09f814bdb39786ba4ecfa7e
Author: Daniel Sun <su...@apache.org>
AuthorDate: Sun Aug 9 11:36:08 2020 +0800

    GROOVY-9679: trivial tweak for better backward compatibility
---
 src/main/java/org/codehaus/groovy/control/ProcessingUnit.java | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/codehaus/groovy/control/ProcessingUnit.java b/src/main/java/org/codehaus/groovy/control/ProcessingUnit.java
index a591f5e..d246dfe 100644
--- a/src/main/java/org/codehaus/groovy/control/ProcessingUnit.java
+++ b/src/main/java/org/codehaus/groovy/control/ProcessingUnit.java
@@ -101,7 +101,10 @@ public abstract class ProcessingUnit {
         // ClassLoaders should only be created inside a doPrivileged block in case
         // this method is invoked by code that does not have security permissions.
         this.classLoader = loader != null ? loader : AccessController.doPrivileged((PrivilegedAction<GroovyClassLoader>) () -> {
-            ClassLoader parent = this.getClass().getClassLoader();
+            ClassLoader parent = Thread.currentThread().getContextClassLoader();
+            if (parent == null) {
+                parent = this.getClass().getClassLoader();
+            }
             return new GroovyClassLoader(parent, getConfiguration());
         });
     }