Fix infinite loop in RegionFile IO

If an exception is thrown during decompress then the read process
would be started again, which of course would eventually throw in
the decompress process.
This commit is contained in:
Spottedleaf
2025-06-09 02:57:21 -07:00
parent 09e9afd295
commit 12d8fe0beb

View File

@@ -1112,7 +1112,7 @@ index 0000000000000000000000000000000000000000..a814512fcfb85312474ae2c2c2144384
+}
diff --git a/ca/spottedleaf/moonrise/patches/chunk_system/io/MoonriseRegionFileIO.java b/ca/spottedleaf/moonrise/patches/chunk_system/io/MoonriseRegionFileIO.java
new file mode 100644
index 0000000000000000000000000000000000000000..1acea58838f057ab87efd103cbecb6f5aeaef393
index 0000000000000000000000000000000000000000..25bceb88f7d040034a740c18ed5a3aab50b0c72b
--- /dev/null
+++ b/ca/spottedleaf/moonrise/patches/chunk_system/io/MoonriseRegionFileIO.java
@@ -0,0 +1,1700 @@
@@ -2261,7 +2261,7 @@ index 0000000000000000000000000000000000000000..1acea58838f057ab87efd103cbecb6f5
+ LOGGER.error("Failed to decompress chunk data for task: " + this.toString(), thr);
+ }
+
+ if (compoundTag == null) {
+ if (throwable == null && compoundTag == null) {
+ // need to re-try from the start
+ this.scheduleReadIO();
+ return;