LoginPacketHandler: stop bailing on unexpected JSON properties

the intent of this was noble (to make sure nothing was missed), but in practice throwing
errors on this stuff is just a pain in the ass. We don't actually need to care if the
properties are not used, since it doesn't affect the decoding (like it would for
a missing packet field), so the only reasons to complain are for BedrockProtocol to
have a complete picture of the protocol, and to make sure we're not discarding useful
information.

Log a warning in these cases instead, which should be noticed by developers without
being an unnecessary problem for users.

closes #6816
This commit is contained in:
Dylan K. Taylor
2025-09-26 23:04:23 +01:00
parent d6e05c90fe
commit 1c92d66ca4
2 changed files with 20 additions and 8 deletions

View File

@@ -5,6 +5,9 @@ class JsonMapper_Exception extends \Exception{}
class JsonMapper{
/** @var ?\Closure(object, string, mixed) : void */
public $undefinedPropertyHandler = null;
/**
* @template TModel of object
*