modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/ContentHandlerBean.java
| 18 +---------
1 file changed, 2 insertions(+), 16 deletions(-)
New commits:
commit b2348f2305b80df82a4f4005ce015ec80af54619
Author: Thomas Segismont <tsegismo(a)redhat.com>
Date: Wed Oct 2 23:03:46 2013 +0200
Fix ContentHandlerBean.uploadContent throws java.lang.ArrayIndexOutOfBoundsException
Caused by: java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method) [rt.jar:1.7.0_40]
at java.io.BufferedOutputStream.write(BufferedOutputStream.java:128)
[rt.jar:1.7.0_40]
at
org.rhq.enterprise.server.rest.ContentHandlerBean.uploadContent(ContentHandlerBean.java:104)
[rhq-server.jar:4.10.0-SNAPSHOT]
I did not look why exactly but we can simply use existing method in StreamUtil
diff --git
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/ContentHandlerBean.java
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/ContentHandlerBean.java
index 41d7847..41a47be 100644
---
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/ContentHandlerBean.java
+++
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/ContentHandlerBean.java
@@ -91,23 +91,9 @@ public class ContentHandlerBean extends AbstractRestBean {
File tmpDir = new File(tmpDirName);
File outFile = File.createTempFile(TMP_FILE_PREFIX, TMP_FILE_SUFFIX,tmpDir);
- FileOutputStream fos = new FileOutputStream(outFile);
- BufferedOutputStream bos = new BufferedOutputStream(fos);
+ BufferedOutputStream bos = new BufferedOutputStream(new
FileOutputStream(outFile));
- BufferedInputStream bis = new BufferedInputStream(contentStream);
-
- byte[] buf = new byte[32768]; // 32k
-
- int data;
- int off=0;
- while ((data=bis.read(buf))!=-1) {
- bos.write(buf,off,data);
- off+=data;
- }
-
- bos.flush();
- bos.close();
- bis.close();
+ StreamUtil.copy(contentStream, bos, true);
String fileHandle = outFile.getName();
StringValue sv = new StringValue(fileHandle);
Show replies by date