RFR: 8364768: JDK javax.imageio ImageWriters do not all flush the output stream [v2]
    Phil Race 
    prr at openjdk.org
       
    Thu Aug 21 19:14:54 UTC 2025
    
    
  
On Wed, 20 Aug 2025 12:31:53 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:
>> Phil Race has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   8364768
>
> src/java.desktop/share/classes/com/sun/imageio/plugins/gif/GIFImageWriter.java line 737:
> 
>> 735:             writeTrailer();
>> 736:         }
>> 737:         stream.flush();
> 
> should we call flush or `flushBefore`(current stream position) as is being done in BMP writer?
You mean like BMP does this
            stream.flushBefore(stream.getStreamPosition());
flush() is exactly equivalent to that.
    public void flush() throws IOException {
        flushBefore(getStreamPosition());
    }
> test/jdk/javax/imageio/FlushTest.java line 2:
> 
>> 1: /*
>> 2:  * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
> 
> 2025?
typo
> test/jdk/javax/imageio/FlushTest.java line 76:
> 
>> 74:                failed = true;
>> 75:             }
>> 76:         } finally {
> 
> no need for finally block or do we need to do `baos.close` here since FileCacheImageOutputStream.close says "The destination OutputStream is not closed."
BAOS doesn't need a close() call to report its size.
I can actually dispense with the whole try block since the method throws IOException
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/26703#discussion_r2291906324
PR Review Comment: https://git.openjdk.org/jdk/pull/26703#discussion_r2291906705
PR Review Comment: https://git.openjdk.org/jdk/pull/26703#discussion_r2291916877
    
    
More information about the client-libs-dev
mailing list