Uploaded image for project: 'Harmony'
  1. Harmony
  2. HARMONY-6483

[classlib][luni] No IllegalArgumentException thrown by PutField.write() when writing to the wrong stream

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 6.0M2, 5.0M14
    • Classlib
    • None

    Description

      Running the following test:

      import java.io.*;
      import java.io.ObjectOutputStream.PutField;
      class Test2 {
      public static void main(String[] args) throws Exception

      { ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(new File("testfile"))); oos.writeObject(new OutputObject()); }

      static class OutputObject implements Serializable {
      private void writeObject(ObjectOutputStream oos) throws IOException

      { ObjectOutputStream oos2 = new ObjectOutputStream(new FileOutputStream(new File("testfile2"))); ObjectOutputStream.PutField putField = oos.putFields(); putField.write(oos2); }

      }
      }

      on the RI produces:
      Exception in thread "main" java.lang.IllegalArgumentException: wrong stream
      at java.io.ObjectOutputStream$PutFieldImpl.write(ObjectOutputStream.java:1670)
      at Test2$OutputObject.writeObject(Test2.java:14)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:63)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
      at java.lang.reflect.Method.invoke(Method.java:624)
      at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:973)
      at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1494)
      at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1425)
      at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1183)
      at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:359)
      at Test2.main(Test2.java:7)

      whereas on Harmony it completes without exception.

      Attachments

        Activity

          People

            odeakin Oliver Deakin
            odeakin Oliver Deakin
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: