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

elecharny pushed a commit to branch 1.1.X
in repository https://gitbox.apache.org/repos/asf/mina-ftpserver.git


The following commit(s) were added to refs/heads/1.1.X by this push:
     new 2698160  Fix for FTPSERVER-499 applying Hai Zhang patch.
2698160 is described below

commit 2698160d6841a74164dcd6b821c6d3f4e10bd2a4
Author: emmanuel lecharny <elecha...@apache.org>
AuthorDate: Mon Mar 14 00:51:05 2022 +0100

    Fix for FTPSERVER-499 applying Hai Zhang patch.
---
 .../org/apache/ftpserver/listener/nio/FtpResponseEncoder.java  | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git 
a/core/src/main/java/org/apache/ftpserver/listener/nio/FtpResponseEncoder.java 
b/core/src/main/java/org/apache/ftpserver/listener/nio/FtpResponseEncoder.java
index 4c4b884..3d0a0eb 100644
--- 
a/core/src/main/java/org/apache/ftpserver/listener/nio/FtpResponseEncoder.java
+++ 
b/core/src/main/java/org/apache/ftpserver/listener/nio/FtpResponseEncoder.java
@@ -37,8 +37,12 @@ import org.apache.mina.filter.codec.demux.MessageEncoder;
  * @author <a href="http://mina.apache.org";>Apache MINA Project</a>
  */
 public class FtpResponseEncoder extends ProtocolEncoderAdapter {
-    private static final CharsetEncoder ENCODER = Charset.forName("UTF-8")
-            .newEncoder();
+    private static final ThreadLocal<CharsetEncoder> ENCODER = new 
ThreadLocal<CharsetEncoder>() {
+        @Override
+        protected CharsetEncoder initialValue() {
+            return Charset.forName("UTF-8").newEncoder();
+        }
+    };
 
     public void encode(IoSession session, Object message,
             ProtocolEncoderOutput out) throws Exception {
@@ -46,7 +50,7 @@ public class FtpResponseEncoder extends 
ProtocolEncoderAdapter {
 
         IoBuffer buf = IoBuffer.allocate(value.length()).setAutoExpand(true);
 
-        buf.putString(value, ENCODER);
+        buf.putString(value, ENCODER.get());
 
         buf.flip();
         out.write(buf);

Reply via email to