This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit 6c4de89924457956589d60d922d3766afc31896d
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Wed Jan 18 18:51:57 2023 +0000

    Override the default implementation where it makes sense to do so
    
    Just for HttpServletRequest.setCharacterEncoding(Charset)
---
 java/org/apache/catalina/connector/Request.java       | 12 ++++++++++++
 java/org/apache/catalina/connector/RequestFacade.java | 12 ++++++++++--
 2 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/java/org/apache/catalina/connector/Request.java 
b/java/org/apache/catalina/connector/Request.java
index 9dfd6725b6..bb3d1897d9 100644
--- a/java/org/apache/catalina/connector/Request.java
+++ b/java/org/apache/catalina/connector/Request.java
@@ -1620,6 +1620,18 @@ public class Request implements HttpServletRequest {
     }
 
 
+    @Override
+    public void setCharacterEncoding(Charset charset) {
+
+        if (usingReader) {
+            return;
+        }
+
+        // Save the validated encoding
+        coyoteRequest.setCharset(charset);
+    }
+
+
     @Override
     public ServletContext getServletContext() {
         return getContext().getServletContext();
diff --git a/java/org/apache/catalina/connector/RequestFacade.java 
b/java/org/apache/catalina/connector/RequestFacade.java
index 4b8540dc1d..382dda04ba 100644
--- a/java/org/apache/catalina/connector/RequestFacade.java
+++ b/java/org/apache/catalina/connector/RequestFacade.java
@@ -18,6 +18,7 @@ package org.apache.catalina.connector;
 
 import java.io.BufferedReader;
 import java.io.IOException;
+import java.nio.charset.Charset;
 import java.util.Collection;
 import java.util.Enumeration;
 import java.util.Locale;
@@ -114,9 +115,16 @@ public class RequestFacade implements HttpServletRequest {
 
 
     @Override
-    public void setCharacterEncoding(String env) throws 
java.io.UnsupportedEncodingException {
+    public void setCharacterEncoding(String encoding) throws 
java.io.UnsupportedEncodingException {
         checkFacade();
-        request.setCharacterEncoding(env);
+        request.setCharacterEncoding(encoding);
+    }
+
+
+    @Override
+    public void setCharacterEncoding(Charset encoding) {
+        checkFacade();
+        request.setCharacterEncoding(encoding);
     }
 
 


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

Reply via email to