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 limited processing flag not persisting through recursions causing crash #8192

Merged

Conversation

Paliak
Copy link
Contributor

@Paliak Paliak commented Aug 15, 2024

Fixes #8136

Description of the problem being solved:

The role of the limited processing flag on skills is to prevent infinite recursion loops that eventually cause a crash. The problem is that due to calcs.initEnv re-generating activeSkillList the flag is lost. This causes issues when there are more than one skill requiring such as flag as the application of the flag will alternate allowing for infinite recursion.

The proposed solution moves the flags from skills to a table in the root of the env table allowing for easier copying and querying of the flags deeper into the call stack. This solution is not ideal as preventing the recalculation of the activeSkillList would greatly speed things up but due to many data dependencies i have not found a good way to achieve that.

Steps taken to verify a working solution:

@Paliak Paliak added the crash Causes PoB to crash and is High Priority label Aug 15, 2024
@LocalIdentity LocalIdentity merged commit b6aa420 into PathOfBuildingCommunity:dev Aug 17, 2024
2 checks passed
@Paliak Paliak deleted the fix-limitedProcessingFlag branch August 17, 2024 18:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crash Causes PoB to crash and is High Priority
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Pob 3.24 Build - Error when trying to open in Pob
2 participants