From 726115e13cc054ce1b68609b129248b789e37d8f Mon Sep 17 00:00:00 2001 From: Maksym Kucherov Date: Tue, 19 May 2026 16:39:55 +0300 Subject: [PATCH] FIX: Decorate `GZIPInputStream` with `DigestInputStream`, not the other way around. --- .../engines/services/DataUpdateServiceDefault.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pipeline.engines/src/main/java/fiftyone/pipeline/engines/services/DataUpdateServiceDefault.java b/pipeline.engines/src/main/java/fiftyone/pipeline/engines/services/DataUpdateServiceDefault.java index 30276b49e..f3b2ffb2a 100644 --- a/pipeline.engines/src/main/java/fiftyone/pipeline/engines/services/DataUpdateServiceDefault.java +++ b/pipeline.engines/src/main/java/fiftyone/pipeline/engines/services/DataUpdateServiceDefault.java @@ -620,6 +620,10 @@ private AutoUpdateStatus downloadFile( logger.debug("HTTP Status is OK"); // wrap input stream in a buffered stream InputStream is = new BufferedInputStream(connection.getInputStream()); + // decompress, if necessary + if (dataFile.getConfiguration().getDecompressContent()) { + is = new GZIPInputStream(is); + } // if checking md5 wrap in a DigestStream MessageDigest md = null; if (dataFile.getConfiguration().getVerifyMd5()) { @@ -635,10 +639,6 @@ private AutoUpdateStatus downloadFile( } is = new DigestInputStream(is, md); } - // decompress, if necessary - if (dataFile.getConfiguration().getDecompressContent()) { - is = new GZIPInputStream(is); - } // copy resulting stream to destination if (Objects.nonNull(tempFile.getPath())) { logger.debug("Copying download stream");