Skip to content

fix: readd deserialization-time validation for iota holders#1167

Open
IridescentVoid wants to merge 3 commits into
FallingColors:1.21from
IridescentVoid:fix_iota_validation
Open

fix: readd deserialization-time validation for iota holders#1167
IridescentVoid wants to merge 3 commits into
FallingColors:1.21from
IridescentVoid:fix_iota_validation

Conversation

@IridescentVoid

Copy link
Copy Markdown
Contributor

Fixes #1160

Alternative implementation of #1160 that performs iota validation in the readIota() call where the iota component is deserialized instead of when OpRead/OpTheCoolerRead return. This should better ensure that the validation code gets called in the future as well.

I also opted to validate the stack to null newly disappeared entity iota after each frame, which should properly prevent anything from consuming invalid iota. This might have performance implications. Interestingly, 0.11.3 on 1.20.1 would have allowed operating on nonexistent/despawned entities as EntityIota used to hold Entity references directly.

Closes #1160

@IridescentVoid

Copy link
Copy Markdown
Contributor Author

It looks like unsealed isn't used in any recipes, so I couldn't test the test function. Regardless, forge builds again.

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

Labels

None yet

Projects

Status: 📋 Backlog

Development

Successfully merging this pull request may close these issues.

1 participant