Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix crash on recursive interrupt ID #534

Merged
merged 4 commits into from
Sep 21, 2020
Merged

Fix crash on recursive interrupt ID #534

merged 4 commits into from
Sep 21, 2020

Conversation

numberZero
Copy link
Contributor

Fix #473.
This ensures the interrupt ID, if it is a table, is a proper tree. A DAG wouldn’t crash the server either but checking for that is tricky.
This also deprecates non-string IIDs to allow future simplifications. Interrupt ID isn’t a place to store tables.

This forbids a bit more than could cause a crash, but checking for
actual recursion only isn’t that trivial and is more intensive
computationally.
@numberZero numberZero added this to the Mesecons 1.3 milestone Sep 12, 2020
Copy link
Member

@sfan5 sfan5 left a comment

Choose a reason for hiding this comment

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

Looks good otherwise

mesecons_luacontroller/init.lua Outdated Show resolved Hide resolved
Co-authored-by: sfan5 <sfan5@live.de>
@numberZero numberZero merged commit 6921909 into minetest-mods:master Sep 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Luacontroller recursive table interrupt iid crash
2 participants