This is an automated email from the ASF dual-hosted git repository.
michaelo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push:
new 142c45a427 BZ 69360: Inconsistent DELETE behavior between
DefaultServlet and WebdavServlet
142c45a427 is described below
commit 142c45a4271e1fd8d400196a883fb560ebded110
Author: Michael Osipov <[email protected]>
AuthorDate: Wed Oct 2 11:04:44 2024 +0200
BZ 69360: Inconsistent DELETE behavior between DefaultServlet and
WebdavServlet
---
java/org/apache/catalina/servlets/WebdavServlet.java | 6 +++---
webapps/docs/changelog.xml | 5 +++++
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/java/org/apache/catalina/servlets/WebdavServlet.java
b/java/org/apache/catalina/servlets/WebdavServlet.java
index d32868a9b3..c2cf8f3d78 100644
--- a/java/org/apache/catalina/servlets/WebdavServlet.java
+++ b/java/org/apache/catalina/servlets/WebdavServlet.java
@@ -1696,7 +1696,7 @@ public class WebdavServlet extends DefaultServlet
implements PeriodicEventListen
if (!resource.isDirectory()) {
if (!resource.delete()) {
- resp.sendError(WebdavStatus.SC_INTERNAL_SERVER_ERROR);
+ resp.sendError(WebdavStatus.SC_METHOD_NOT_ALLOWED);
return false;
}
} else {
@@ -1705,7 +1705,7 @@ public class WebdavServlet extends DefaultServlet
implements PeriodicEventListen
deleteCollection(req, path, errorList);
if (!resource.delete()) {
- errorList.put(path,
Integer.valueOf(WebdavStatus.SC_INTERNAL_SERVER_ERROR));
+ errorList.put(path,
Integer.valueOf(WebdavStatus.SC_METHOD_NOT_ALLOWED));
}
if (!errorList.isEmpty()) {
@@ -1772,7 +1772,7 @@ public class WebdavServlet extends DefaultServlet
implements PeriodicEventListen
if (!childResource.isDirectory()) {
// If it's not a collection, then it's an unknown
// error
- errorList.put(childName,
Integer.valueOf(WebdavStatus.SC_INTERNAL_SERVER_ERROR));
+ errorList.put(childName,
Integer.valueOf(WebdavStatus.SC_METHOD_NOT_ALLOWED));
}
}
}
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index ca652cd604..f4eb84d1b4 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -128,6 +128,11 @@
<code>getRelativePath()</code> method from super class with
incorrect Javadoc. (michaelo)
</fix>
+ <fix>
+ <bug>69360</bug>: Inconsistent <code>DELETE</code> behavior between
+ <code>WebdavServlet</code> and <code>DefaultServlet</code>.
+ (michaelo)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]