CachedOutputStream#writeCacheTo(StringBuilder, int) fails with
StringIndexOutOfBoundsException
----------------------------------------------------------------------------------------------
Key: CXF-1571
URL: https://issues.apache.org/jira/browse/CXF-1571
Project: CXF
Issue Type: Bug
Components: Core
Affects Versions: 2.1
Reporter: Axel Dehning
public void writeCacheTo(StringBuilder out, int limit) throws IOException {
...
if ((count + x) > limit) {
x = count - limit; <<< this
has to be: x = limit - count;
}
out.append(new String(bytes, 0, x));
count += x;
...
}
If limit is reached x becomes negative and String construction fails with
java.lang.StringIndexOutOfBoundsException: String index out of range: -784
at java.lang.String.checkBounds(String.java:368)
at java.lang.String.<init>(String.java:457)
at
org.apache.cxf.io.CachedOutputStream.writeCacheTo(CachedOutputStream.java:272)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.