53 lines
2.6 KiB
Diff
53 lines
2.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Helvetica Volubi <suisuroru@blue-millennium.fun>
|
|
Date: Sat, 24 May 2025 04:04:42 +0800
|
|
Subject: [PATCH] Command IllegalArgumentException crash fix
|
|
|
|
|
|
diff --git a/net/minecraft/server/commands/FillCommand.java b/net/minecraft/server/commands/FillCommand.java
|
|
index 3172e86defe86f44b1b095d89e2a35b06372dae9..5ce1f5c3e42fd0b8674cce8da9f3a732114607fb 100644
|
|
--- a/net/minecraft/server/commands/FillCommand.java
|
|
+++ b/net/minecraft/server/commands/FillCommand.java
|
|
@@ -245,6 +245,10 @@ public class FillCommand {
|
|
// Folia start - region threading
|
|
} catch (CommandSyntaxException ex) {
|
|
sendMessage(source, ex);
|
|
+ // Luminol Start - Server crash fix
|
|
+ } catch (IllegalArgumentException ex) {
|
|
+ net.minecraft.server.commands.SetBlockCommand.processIAE(source, ex);
|
|
+ // Luminol End - Server crash fix
|
|
}}); return 0; // Folia end - region threading
|
|
}
|
|
}
|
|
diff --git a/net/minecraft/server/commands/SetBlockCommand.java b/net/minecraft/server/commands/SetBlockCommand.java
|
|
index 96819168051a971685c9b69044fb5c4953bebd95..7f538574a44d4815687fe1f4cc3e7de47cac703b 100644
|
|
--- a/net/minecraft/server/commands/SetBlockCommand.java
|
|
+++ b/net/minecraft/server/commands/SetBlockCommand.java
|
|
@@ -101,6 +101,15 @@ public class SetBlockCommand {
|
|
}
|
|
// Folia end - region threading
|
|
|
|
+ // Luminol Start - Server crash fix
|
|
+ public static void processIAE(CommandSourceStack src, IllegalArgumentException ex) {
|
|
+ Component hoverText = Component.translatable("command.failed")
|
|
+ .withStyle(style -> style.withHoverEvent(new net.minecraft.network.chat.HoverEvent.ShowText(Component.literal(ex.getMessage()))));
|
|
+ src.sendFailure(hoverText);
|
|
+ com.mojang.logging.LogUtils.getLogger().error(ex.getMessage(), ex);
|
|
+ }
|
|
+ // Luminol end - Server crash fix
|
|
+
|
|
private static int setBlock(
|
|
CommandSourceStack source, BlockPos pos, BlockInput block, SetBlockCommand.Mode mode, @Nullable Predicate<BlockInWorld> filter, boolean strict
|
|
) throws CommandSyntaxException {
|
|
@@ -137,6 +146,10 @@ public class SetBlockCommand {
|
|
// Folia start - region threading
|
|
} catch (CommandSyntaxException ex) {
|
|
sendMessage(source, ex);
|
|
+ // Luminol Start - Server crash fix
|
|
+ } catch (IllegalArgumentException ex) {
|
|
+ processIAE(source, ex);
|
|
+ // Luminol End - Server crash fix
|
|
}
|
|
});
|
|
return 1;
|