Author: markt
Date: Thu Jul  3 15:37:48 2014
New Revision: 1607678

URL: http://svn.apache.org/r1607678
Log:
Fix a warning with the Litmus WebDAV testsuite

Modified:
    tomcat/trunk/java/org/apache/catalina/servlets/WebdavServlet.java

Modified: tomcat/trunk/java/org/apache/catalina/servlets/WebdavServlet.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/servlets/WebdavServlet.java?rev=1607678&r1=1607677&r2=1607678&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/servlets/WebdavServlet.java (original)
+++ tomcat/trunk/java/org/apache/catalina/servlets/WebdavServlet.java Thu Jul  
3 15:37:48 2014
@@ -1676,6 +1676,18 @@ public class WebdavServlet
                 copyResource(errorList, childSrc, childDest);
             }
         } else if (sourceResource.isFile()) {
+            WebResource destResource = resources.getResource(dest);
+            if (!destResource.exists() && 
!destResource.getWebappPath().endsWith("/")) {
+                int lastSlash = destResource.getWebappPath().lastIndexOf('/');
+                if (lastSlash > 0) {
+                    String parent = destResource.getWebappPath().substring(0, 
lastSlash);
+                    WebResource parentResource = resources.getResource(parent);
+                    if (!parentResource.isDirectory()) {
+                        errorList.put(source, new 
Integer(WebdavStatus.SC_CONFLICT));
+                        return false;
+                    }
+                }
+            }
             if (!resources.write(dest, sourceResource.getInputStream(),
                     false)) {
                 errorList.put(source,



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to