Author: ngn
Date: Thu Feb 18 21:49:13 2010
New Revision: 911609

URL: http://svn.apache.org/viewvc?rev=911609&view=rev
Log:
Fixing bug where we did not correctly handle multiline replies with lines 
starting with numbers (FTPSERVER-347)

Modified:
    
mina/ftpserver/branches/1.0.x/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
    
mina/ftpserver/branches/1.0.x/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
    
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
    
mina/ftpserver/trunk/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java

Modified: 
mina/ftpserver/branches/1.0.x/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
URL: 
http://svn.apache.org/viewvc/mina/ftpserver/branches/1.0.x/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java?rev=911609&r1=911608&r2=911609&view=diff
==============================================================================
--- 
mina/ftpserver/branches/1.0.x/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
 (original)
+++ 
mina/ftpserver/branches/1.0.x/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
 Thu Feb 18 21:49:13 2010
@@ -71,4 +71,11 @@
 
         assertEquals("123-foo\r\n bar\r\n123 baz\r\n", response.toString());
     }
+
+    public void testMultipleLinesToStringNumberFirst() {
+        DefaultFtpReply response = new DefaultFtpReply(123, 
"foo\n234bar\nbaz");
+
+        assertEquals("123-foo\r\n  234bar\r\n123 baz\r\n", 
response.toString());
+    }
+
 }

Modified: 
mina/ftpserver/branches/1.0.x/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
URL: 
http://svn.apache.org/viewvc/mina/ftpserver/branches/1.0.x/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java?rev=911609&r1=911608&r2=911609&view=diff
==============================================================================
--- 
mina/ftpserver/branches/1.0.x/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
 (original)
+++ 
mina/ftpserver/branches/1.0.x/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
 Thu Feb 18 21:49:13 2010
@@ -106,6 +106,9 @@
                     sb.append(" ");
                 }
 
+                if(line.length() > 0 && Character.isDigit(line.charAt(0))) {
+                       sb.append("  ");
+                }
                 sb.append(line);
                 sb.append(CRLF);
             }

Modified: 
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
URL: 
http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java?rev=911609&r1=911608&r2=911609&view=diff
==============================================================================
--- 
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
 (original)
+++ 
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/impl/DefaultFtpReplyTest.java
 Thu Feb 18 21:49:13 2010
@@ -72,4 +72,11 @@
 
         assertEquals("123-foo\r\n bar\r\n123 baz\r\n", response.toString());
     }
+
+    public void testMultipleLinesToStringNumberFirst() {
+        DefaultFtpReply response = new DefaultFtpReply(123, 
"foo\n234bar\nbaz");
+
+        assertEquals("123-foo\r\n  234bar\r\n123 baz\r\n", 
response.toString());
+    }
+
 }

Modified: 
mina/ftpserver/trunk/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
URL: 
http://svn.apache.org/viewvc/mina/ftpserver/trunk/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java?rev=911609&r1=911608&r2=911609&view=diff
==============================================================================
--- 
mina/ftpserver/trunk/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
 (original)
+++ 
mina/ftpserver/trunk/ftplet-api/src/main/java/org/apache/ftpserver/ftplet/DefaultFtpReply.java
 Thu Feb 18 21:49:13 2010
@@ -121,6 +121,9 @@
                     sb.append(" ");
                 }
 
+                if(line.length() > 0 && Character.isDigit(line.charAt(0))) {
+                       sb.append("  ");
+                }
                 sb.append(line);
                 sb.append(CRLF);
             }


Reply via email to