From 9213b7fb2eec61780623805b5a4371207b3cbc8e Mon Sep 17 00:00:00 2001 From: Glavo Date: Sun, 10 Aug 2025 21:41:10 +0800 Subject: [PATCH] =?UTF-8?q?Fix=204232:=20=E4=BF=AE=E5=A4=8D=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96=20CacheRepository=20=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E5=90=AF=E5=8A=A8=E5=99=A8=E5=B4=A9=E6=BA=83=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=20(#4235)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/jackhuang/hmcl/download/DefaultCacheRepository.java | 2 +- .../main/java/org/jackhuang/hmcl/util/CacheRepository.java | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultCacheRepository.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultCacheRepository.java index 32bb627b4..d044305fa 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultCacheRepository.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultCacheRepository.java @@ -71,7 +71,7 @@ public class DefaultCacheRepository extends CacheRepository { } else { index = new Index(); } - } catch (IOException | JsonParseException e) { + } catch (Exception e) { LOG.warning("Unable to read index file", e); index = new Index(); } finally { diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/CacheRepository.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/CacheRepository.java index ff5612f94..8ceeccb70 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/CacheRepository.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/CacheRepository.java @@ -17,7 +17,6 @@ */ package org.jackhuang.hmcl.util; -import com.google.gson.JsonParseException; import com.google.gson.JsonSyntaxException; import com.google.gson.annotations.SerializedName; import org.jackhuang.hmcl.util.function.ExceptionalSupplier; @@ -75,7 +74,7 @@ public class CacheRepository { index = new LinkedHashMap<>(); indexFileLastModified = null; } - } catch (IOException | JsonParseException e) { + } catch (Exception e) { LOG.warning("Unable to read index file", e); index = new LinkedHashMap<>(); indexFileLastModified = null; @@ -354,7 +353,7 @@ public class CacheRepository { } public int compareTo(ETagItem other) { - if (!url.equals(other.url)) + if (!url.equals(other.url) && !NetworkUtils.toURI(url).equals(NetworkUtils.toURI(other.url))) throw new IllegalArgumentException(); ZonedDateTime thisTime = Lang.ignoringException(() -> ZonedDateTime.parse(remoteLastModified, DateTimeFormatter.RFC_1123_DATE_TIME), null);