You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2013/09/11 23:10:37 UTC
svn commit: r1522038 - in /tomcat/tc7.0.x/trunk: ./
java/org/apache/tomcat/util/buf/Utf8Encoder.java
Author: markt
Date: Wed Sep 11 21:10:37 2013
New Revision: 1522038
URL: http://svn.apache.org/r1522038
Log:
If both the input and output buffers are exhausted at the same time, return UNDERFLOW as more input data would be required to trigger OVERFLOW.
Modified:
tomcat/tc7.0.x/trunk/ (props changed)
tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/buf/Utf8Encoder.java
Propchange: tomcat/tc7.0.x/trunk/
------------------------------------------------------------------------------
Merged /tomcat/trunk:r1522016
Modified: tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/buf/Utf8Encoder.java
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/buf/Utf8Encoder.java?rev=1522038&r1=1522037&r2=1522038&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/buf/Utf8Encoder.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/buf/Utf8Encoder.java Wed Sep 11 21:10:37 2013
@@ -23,7 +23,8 @@ import java.nio.charset.CoderResult;
import java.nio.charset.StandardCharsets;
/**
- * Encodes characters as bytes using UTF-8. Extracted from Apache Harmony.
+ * Encodes characters as bytes using UTF-8. Extracted from Apache Harmony with
+ * some minor bug fixes applied.
*/
public class Utf8Encoder extends CharsetEncoder {
@@ -132,7 +133,12 @@ public class Utf8Encoder extends Charset
if (outRemaining == 0) {
in.position(x + 1);
out.position(outPos);
- return CoderResult.OVERFLOW;
+ // If both input and output are exhausted, return UNDERFLOW
+ if (x + 1 == limit) {
+ return CoderResult.UNDERFLOW;
+ } else {
+ return CoderResult.OVERFLOW;
+ }
}
}
@@ -226,5 +232,4 @@ public class Utf8Encoder extends Charset
}
return CoderResult.UNDERFLOW;
}
-
}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org