Skip to content

Conversation

@Tmpod
Copy link
Contributor

@Tmpod Tmpod commented Jan 8, 2026

This was causing connection crashes for versions ≤1.21.4, since the 1.21.5.→1.21.4 step rewrites all text components as strings, and thus parses the NBT.
Since custom click events (and dialogs) were not being filtered on signs in the 1.21.6→1.21.5 step (despite being correctly handled everywhere else since #1108), the latter step was failing to properly read the NBT structure and thus crashing the player's connection.

The fix was done by lifting the sign logic in
BlockItemPacketRewriter1_21_5 and adapting it into BlockItemPacketRewriter1_21_6. All filtering is still delegated to the appropriate ComponentRewriter, so required code change was rather small.

This commit is almost identical to my other fix related to sprites in the 1.21.9→1.21.7 step. See commit d273b06 (e3a4761) and PR #1147.

Fixes #1172

… step

This was causing connection crashes for versions ≤1.21.4, since the
1.21.5.→1.21.4 step rewrites all text components as strings, and thus
parses the NBT.
Since custom click events (and dialogs) were not being filtered on
signs in the 1.21.6→1.21.5 step (despite being correctly handled
everywhere else since ViaVersion#1108), the latter step was failing to properly
read the NBT structure and thus crashing the player's connection.

The fix was done by lifting the sign logic in
`BlockItemPacketRewriter1_21_5` and adapting it into
`BlockItemPacketRewriter1_21_6`. All filtering is still delegated to the
appropriate `ComponentRewriter`, so required code change was rather
small.

This commit is almost identical to my other fix related to sprites in
the 1.21.9→1.21.7 step. See commit d273b06 (e3a4761) and PR ViaVersion#1147.

Fixes ViaVersion#1172
Copy link
Member

@FlorianMichael FlorianMichael left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah probably time we move all of this into the general rewriter class, thank you

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Signs with custom click events kick players in ≤1.21.4

2 participants