Skip to content

Commit 5e6cc70

Browse files
committed
fix MC-158900 (thanks Microcontrollers #482)
1 parent f6e8605 commit 5e6cc70

File tree

3 files changed

+24
-0
lines changed

3 files changed

+24
-0
lines changed

.bugs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ patched 264979 server basic
111111
patched 264285 server basic
112112
patched 131562 server basic
113113
patched 133218 server basic
114+
patched 158900 server basic
114115

115116
previous 2025 17w47a
116117
previous 53312 22w17a
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package dev.isxander.debugify.mixins.basic.mc158900;
2+
3+
import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
4+
import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation;
5+
import dev.isxander.debugify.fixes.BugFix;
6+
import dev.isxander.debugify.fixes.FixCategory;
7+
import net.minecraft.server.players.NameAndId;
8+
import net.minecraft.server.players.PlayerList;
9+
import net.minecraft.server.players.UserBanList;
10+
import org.spongepowered.asm.mixin.Mixin;
11+
import org.spongepowered.asm.mixin.injection.At;
12+
13+
@BugFix(id = "MC-158900", category = FixCategory.BASIC, env = BugFix.Env.SERVER, description = "\"bad packet id 26\" disconnect after first-login after a temporary ban expires")
14+
@Mixin(PlayerList.class)
15+
public class PlayerListMixin {
16+
@WrapOperation(method = "canPlayerLogin", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/players/UserBanList;isBanned(Lnet/minecraft/server/players/NameAndId;)Z"))
17+
private boolean removeExpiredBeforeCheck(UserBanList instance, NameAndId user, Operation<Boolean> original) {
18+
instance.get(user); // get will remove expired bans
19+
return original.call(instance, user);
20+
}
21+
22+
}

src/main/resources/debugify.mixins.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
"basic.mc147659.CatSpawnerMixin",
2929
"basic.mc153010.FoxMixin",
3030
"basic.mc155509.PufferfishMixin",
31+
"basic.mc158900.PlayerListMixin",
3132
"basic.mc159283.DensityFunctionsMixin",
3233
"basic.mc160095.CactusBlockMixin",
3334
"basic.mc168573.BlocksAttacksMixin",

0 commit comments

Comments
 (0)