patcher: guard remaining NPE paths in CoreProtect-rollback crash cascade #2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/coreprotect-rollback-npe-guards"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The existing
update_isSpectatorguard (a49e216) fixed the first crash but leftLevelRenderer.update()running into a second directminecraft.playeraccess further down. Chasing that exposed three more null-player/null-connection paths that all trigger during the same transient window (heavy chunk reload / CoreProtect rollback):LevelRenderer.update(): HEAD guard, cancel whenminecraft.playeris nullLevelRenderer.extractLevel(): HEAD guard, same conditionEntity.hasIndirectPassenger()WrapOperation: guard null passengerMixinGui.extractCameraOverlays(): HEAD guard, cancel when player is nullViewManager.updateLocation(): guard nullgetConnection()(CoreProtect reconnect race)All five skip one frame / return a safe default with no observable gameplay effect.
Verification:
--release 17)hasCommercialLicense=iconst_1, no network residue)View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.