Tibor Digana created SUREFIRE-1349:
--------------------------------------

             Summary: FreeBSD cross process communication needs to commit 
stdout data in forked JVM within a synchronized block
                 Key: SUREFIRE-1349
                 URL: https://issues.apache.org/jira/browse/SUREFIRE-1349
             Project: Maven Surefire
          Issue Type: Bug
            Reporter: Tibor Digana
            Assignee: Tibor Digana
             Fix For: 2.19.2


In the branch {{2.19.2-experimental}} we discovered that less tests failed on 
the platform FreeBSD after we flushed {{stdout}}. Our old code did this already 
in some places but some missed this.
As a negative side effect, closing stream, did not solve anything and stream 
could not be recovered.
We were not sure if FreeBSD platform read the JAR file completely due to we did 
not close ZIP entry properly in JarOutputStream. We did all for finishing 
stream and we flushed FileOutputStream due to close() method does not 
explicitly flush stream, however flush/close contract is not documented, it's 
just sort of a known implicit behavior in Oracle's JRE that people generally 
trust. In specific cases where you know you need to call flush() before close() 
as been JRE platform independent.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to