You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2014/10/01 18:58:54 UTC

svn commit: r1628775 - /tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContextConfig.java

Author: rmannibucau
Date: Wed Oct  1 16:58:53 2014
New Revision: 1628775

URL: http://svn.apache.org/r1628775
Log:
TOMEE-1370 supporting sym links for @WebXXX scanning + backport as protection but shouldn't be needed

Modified:
    tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContextConfig.java

Modified: tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContextConfig.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContextConfig.java?rev=1628775&r1=1628774&r2=1628775&view=diff
==============================================================================
--- tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContextConfig.java (original)
+++ tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/OpenEJBContextConfig.java Wed Oct  1 16:58:53 2014
@@ -656,16 +656,19 @@ public class OpenEJBContextConfig extend
     }
 
     private boolean isIncludedIn(final String filePath, final File classAsFile) throws MalformedURLException {
-        final File file = URLs.toFile(new URL(filePath));
+        final File toFile = URLs.toFile(new URL(filePath));
+        File file;
+        try { // symb links
+            file = toFile.getCanonicalFile();
+        } catch (final IOException e) {
+            file = toFile;
+        }
 
         File current = classAsFile;
         while (current != null && current.exists()) {
             if (current.equals(file)) {
                 final File parent = current.getParentFile();
-                if ("classes".equals(current.getName()) && parent != null && "WEB-INF".equals(parent.getName())) {
-                    return false;
-                }
-                return true;
+                return !("classes".equals(current.getName()) && parent != null && "WEB-INF".equals(parent.getName()));
             }
             current = current.getParentFile();
             if (BASE.equals(current)) {