diff --git a/CHANGELOG.md b/CHANGELOG.md index 0c8301322..2dee595ba 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ ------------------------------------------------------------------------------------------------------------- -# 5.8.10.M1 (2022-11-12) +# 5.8.10.M1 (2022-11-16) ### 🐣新特性 * 【http 】 HttpResponse增加getFileNameFromDisposition方法(pr#2676@Github) @@ -13,6 +13,7 @@ * 【core 】 ClassScanner 增加忽略加载错误类的扫描方法(pr#855@Gitee) * 【core 】 DateUtil和LocalDateTimeUtil添加区间退化为点,点与区间,点与点之间关系判断。(pr#2725@Github) * 【http 】 UserAgentUtil增加对钉钉PC端的支持(issue#I60UOP@Gitee) +* 【extra 】 兼容ZipArchiveInputStream多参数情况(issue#2736@Github) ### 🐞Bug修复 * 【db 】 修复分页时order by截断问题(issue#I5X6FM@Gitee) diff --git a/hutool-extra/src/main/java/cn/hutool/extra/compress/extractor/StreamExtractor.java b/hutool-extra/src/main/java/cn/hutool/extra/compress/extractor/StreamExtractor.java index a36236a3b..6befe9ad0 100755 --- a/hutool-extra/src/main/java/cn/hutool/extra/compress/extractor/StreamExtractor.java +++ b/hutool-extra/src/main/java/cn/hutool/extra/compress/extractor/StreamExtractor.java @@ -69,6 +69,12 @@ public class StreamExtractor implements Extractor{ * @param in 包流 */ public StreamExtractor(Charset charset, String archiverName, InputStream in) { + // issue#2736 自定义ArchiveInputStream + if(in instanceof ArchiveInputStream){ + this.in = (ArchiveInputStream) in; + return; + } + final ArchiveStreamFactory factory = new ArchiveStreamFactory(charset.name()); try { in = IoUtil.toBuffered(in);