This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/9.0.x by this push:
new e2d82d0b4f Align escaping ExtendedAccessLogValve with the other
implementations
e2d82d0b4f is described below
commit e2d82d0b4f748e15f4b7dcc520dd020d359f61b2
Author: Mark Thomas <[email protected]>
AuthorDate: Wed Apr 8 12:23:07 2026 +0100
Align escaping ExtendedAccessLogValve with the other implementations
---
.../catalina/valves/ExtendedAccessLogValve.java | 31 +++++++++++++++-------
webapps/docs/changelog.xml | 4 +++
2 files changed, 26 insertions(+), 9 deletions(-)
diff --git a/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
b/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
index f9590a4802..6ec25ff389 100644
--- a/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
+++ b/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
@@ -572,11 +572,17 @@ public class ExtendedAccessLogValve extends
AccessLogValve {
@Override
public void addElement(CharArrayWriter buf, Date
date, Request request, Response response,
long time) {
- String query = request.getQueryString();
- if (query != null) {
- buf.append(query);
- } else {
+ String query = null;
+ if (request != null) {
+ query = request.getQueryString();
+ }
+ if (query == null) {
buf.append('-');
+ } else if (query.isEmpty()) {
+ // NO-OP
+ // Don't want to write "-" if the query
string is present but empty
+ } else {
+ escapeAndAppend(query, buf, true);
}
}
};
@@ -586,11 +592,18 @@ public class ExtendedAccessLogValve extends
AccessLogValve {
@Override
public void addElement(CharArrayWriter buf, Date date,
Request request, Response response,
long time) {
- String query = request.getQueryString();
- buf.append(request.getRequestURI());
- if (query != null) {
- buf.append('?');
- buf.append(request.getQueryString());
+ if (request != null) {
+ escapeAndAppend(request.getRequestURI(), buf);
+ String query = request.getQueryString();
+ if (query != null) {
+ buf.append('?');
+ // Don't want to write "-" if the query
string is present but empty
+ if (!query.isEmpty()) {
+ buf.append(request.getQueryString());
+ }
+ }
+ } else {
+ buf.append('-');
}
}
};
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 22a3152971..3fdb32d8c8 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -120,6 +120,10 @@
Failed precondition should make WebDAV DELETE fail. <pr>982</pr>
submitted by Mahmoud Alarby. (remm)
</fix>
+ <fix>
+ Align the escaping in <code>ExtendedAccessLogValve</code> with the
other
+ <code>AccessLogValve</code> implementations. (markt)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]