GRAPHICS: MACGUI: [RFC] Attempt to fix suspected threading threading issues in the Macintosh Window Manager #5440
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While working on the menu handling for the Macintosh versions of Indiana Jones and the Last Crusade and Loom, I've had the screen go mysteriously black on me two or three times. I think it's been when the menus have been either about to be activated or inactivated, which makes me suspect that it's a threading issue. The menus are activated by a timer, so anything that timer function touches could be at risk.
So I've added a mutex to try and guard against this. But threading is something I generally try to avoid (the Last Crusade GUI, despite its many timed animations, remain steadfastly single-threaded), so I don't know if I'm doing this right. At all.