This is an automated email from the git hooks/post-receive script.

eugene-guest pushed a commit to annotated tag OpenBSD
in repository testng.

commit f05a3af7797aa441152a3e5daa1bf566010f84cb
Author: Aslak Knutsen <[email protected]>
Date:   Wed Aug 14 16:20:43 2013 +0200

    Only load the XmlClass once from one ClassLoader
    
    XmlClass.getSupportClass uses the Thread Context ClassLoader,
    while Class.forName use the Callers ClassLoader. These might
    not be the same ClassLoader. Previous versions used the TCCL.
---
 .../java/org/testng/internal/XmlMethodSelector.java    | 18 ++++++------------
 1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/src/main/java/org/testng/internal/XmlMethodSelector.java 
b/src/main/java/org/testng/internal/XmlMethodSelector.java
index 2661987..5dc419b 100755
--- a/src/main/java/org/testng/internal/XmlMethodSelector.java
+++ b/src/main/java/org/testng/internal/XmlMethodSelector.java
@@ -235,28 +235,22 @@ public class XmlMethodSelector implements IMethodSelector 
{
     return className + "." + methodName;
   }
 
-  private void checkMethod(String className, String methodName) {
+  private void checkMethod(Class<?> c, String methodName) {
     Pattern p = Pattern.compile(methodName);
-    try {
-      Class<?> c = Class.forName(className);
-      for (Method m : c.getMethods()) {
-        if (p.matcher(m.getName()).matches()) {
-          return;
-        }
+    for (Method m : c.getMethods()) {
+      if (p.matcher(m.getName()).matches()) {
+        return;
       }
-    } catch (ClassNotFoundException e) {
-      throw new TestNGException(e);
     }
-
     Utils.log("Warning", 2, "The regular expression \"" + methodName + "\" 
didn't match any" +
-               " method in class " + className);
+              " method in class " + c.getName());
   }
 
   public void setXmlClasses(List<XmlClass> classes) {
     m_classes = classes;
     for (XmlClass c : classes) {
       for (XmlInclude m : c.getIncludedMethods()) {
-        checkMethod(c.getName(), m.getName());
+        checkMethod(c.getSupportClass(), m.getName());
         String methodName = makeMethodName(c.getName(), m.getName());
         m_includedMethods.put(methodName, m);
       }

-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-java/testng.git

_______________________________________________
pkg-java-commits mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

Reply via email to