Author: ggregory
Date: Fri Dec 23 23:29:00 2016
New Revision: 1775932

URL: http://svn.apache.org/viewvc?rev=1775932&view=rev
Log:
Use try with resources.

Modified:
    
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/common/itu_t4/T4AndT6Compression.java

Modified: 
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/common/itu_t4/T4AndT6Compression.java
URL: 
http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/common/itu_t4/T4AndT6Compression.java?rev=1775932&r1=1775931&r2=1775932&view=diff
==============================================================================
--- 
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/common/itu_t4/T4AndT6Compression.java
 (original)
+++ 
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/common/itu_t4/T4AndT6Compression.java
 Fri Dec 23 23:29:00 2016
@@ -170,30 +170,31 @@ public final class T4AndT6Compression {
     public static byte[] compressT4_1D(final byte[] uncompressed, final int 
width,
             final int height, final boolean hasFill) throws 
ImageWriteException {
         final BitInputStreamFlexible inputStream = new 
BitInputStreamFlexible(new ByteArrayInputStream(uncompressed));
-        final BitArrayOutputStream outputStream = new BitArrayOutputStream();
-        if (hasFill) {
-            T4_T6_Tables.EOL16.writeBits(outputStream);
-        } else {
-            T4_T6_Tables.EOL.writeBits(outputStream);
-        }
-        
-        for (int y = 0; y < height; y++) {
-            compress1DLine(inputStream, outputStream, null, width);
+        try (final BitArrayOutputStream outputStream = new 
BitArrayOutputStream()) {
             if (hasFill) {
-                int bitsAvailable = 
outputStream.getBitsAvailableInCurrentByte();
-                if (bitsAvailable < 4) {
-                    outputStream.flush();
-                    bitsAvailable = 8;
-                }
-                for (; bitsAvailable > 4; bitsAvailable--) {
-                    outputStream.writeBit(0);
+                T4_T6_Tables.EOL16.writeBits(outputStream);
+            } else {
+                T4_T6_Tables.EOL.writeBits(outputStream);
+            }
+
+            for (int y = 0; y < height; y++) {
+                compress1DLine(inputStream, outputStream, null, width);
+                if (hasFill) {
+                    int bitsAvailable = 
outputStream.getBitsAvailableInCurrentByte();
+                    if (bitsAvailable < 4) {
+                        outputStream.flush();
+                        bitsAvailable = 8;
+                    }
+                    for (; bitsAvailable > 4; bitsAvailable--) {
+                        outputStream.writeBit(0);
+                    }
                 }
+                T4_T6_Tables.EOL.writeBits(outputStream);
+                inputStream.flushCache();
             }
-            T4_T6_Tables.EOL.writeBits(outputStream);
-            inputStream.flushCache();
+
+            return outputStream.toByteArray();
         }
-        
-        return outputStream.toByteArray();
     }
 
     /**


Reply via email to