This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-compress.git
commit faa8b444f6e67afe8552262d7576e55e8c5eb4bc Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Mon Jan 9 22:35:31 2023 -0500 Refactor and comment --- .../compress/compressors/gzip/GzipCompressorInputStream.java | 6 ++---- .../compress/compressors/gzip/GzipCompressorOutputStream.java | 6 ++---- .../org/apache/commons/compress/compressors/gzip/GzipUtils.java | 7 +++++++ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java index 63ae8e3f..f75e78c8 100644 --- a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java +++ b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java @@ -18,8 +18,6 @@ */ package org.apache.commons.compress.compressors.gzip; -import static java.nio.charset.StandardCharsets.ISO_8859_1; - import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; import java.io.DataInput; @@ -287,12 +285,12 @@ public class GzipCompressorInputStream extends CompressorInputStream // Original file name if ((flg & FNAME) != 0) { - parameters.setFilename(new String(readToNull(inData), ISO_8859_1)); + parameters.setFilename(new String(readToNull(inData), GzipUtils.GZIP_ENCODING)); } // Comment if ((flg & FCOMMENT) != 0) { - parameters.setComment(new String(readToNull(inData), ISO_8859_1)); + parameters.setComment(new String(readToNull(inData), GzipUtils.GZIP_ENCODING)); } // Header "CRC16" which is actually a truncated CRC32 (which isn't diff --git a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java index 8c1a0131..604398bb 100644 --- a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java +++ b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java @@ -18,8 +18,6 @@ */ package org.apache.commons.compress.compressors.gzip; -import static java.nio.charset.StandardCharsets.ISO_8859_1; - import java.io.IOException; import java.io.OutputStream; import java.nio.ByteBuffer; @@ -197,12 +195,12 @@ public class GzipCompressorOutputStream extends CompressorOutputStream { out.write(buffer.array()); if (filename != null) { - out.write(filename.getBytes(ISO_8859_1)); + out.write(filename.getBytes(GzipUtils.GZIP_ENCODING)); out.write(0); } if (comment != null) { - out.write(comment.getBytes(ISO_8859_1)); + out.write(comment.getBytes(GzipUtils.GZIP_ENCODING)); out.write(0); } } diff --git a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java index b0cdb649..013adae2 100644 --- a/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java +++ b/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java @@ -18,6 +18,8 @@ */ package org.apache.commons.compress.compressors.gzip; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; import java.util.LinkedHashMap; import java.util.Map; @@ -51,6 +53,11 @@ public class GzipUtils { fileNameUtil = new FileNameUtil(uncompressSuffix, ".gz"); } + /** + * Encoding for file name and comments per the <a href="https://tools.ietf.org/html/rfc1952">GZIP File Format Specification</a> + */ + static final Charset GZIP_ENCODING = StandardCharsets.ISO_8859_1; + /** * Maps the given file name to the name that the file should have after * compression with gzip. Common file types with custom suffixes for