[ https://issues.apache.org/jira/browse/HARMONY-4447?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12514583
]
Leo Li commented on HARMONY-4447:
---------------------------------
Hi, Andrew
The bug has been fixed on r558643. Please verify if it is fixed as you expect.
Good luck!
Leo.
> XMLEncoder.flush() should not always flush
> ------------------------------------------
>
> Key: HARMONY-4447
> URL: https://issues.apache.org/jira/browse/HARMONY-4447
> Project: Harmony
> Issue Type: Bug
> Environment: M2 on Win x86.
> Reporter: Andrew Cornwall
> Assignee: Leo Li
> Priority: Minor
>
> The flush() method in XMLEncoder doesn't take into account the fact that data may have
already been written. Consequently, calling XMLEncoder.flush() may result in the same data
being written twice.
> Here's a testcase:
> import java.beans.XMLEncoder;
> import java.io.ByteArrayOutputStream;
> public class Bugzilla125927 {
> public static void main (String args[]) {
> Object object = "hello";
> byte[] out = null;
> ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
> XMLEncoder encoder = new XMLEncoder(outputStream);
> try{
> encoder.writeObject(object);
> encoder.flush();
> encoder.close();
> outputStream.close();
> }
> catch (Exception ex) {
> ex.printStackTrace();
> }
> System.out.println(new String(outputStream.toByteArray()));
> }
> }
> On the Sun JDK, this results in the following output:
> <?xml version="1.0" encoding="UTF-8"?>
> <java version="1.5.0_04" class="java.beans.XMLDecoder">
> <string>hello</string>
> </java>
> On Harmony, you get the following:
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
|