Skip to content

libkirk concurrency fixes #20453

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

Merged
merged 5 commits into from
Jun 5, 2025
Merged

libkirk concurrency fixes #20453

merged 5 commits into from
Jun 5, 2025

Conversation

hrydgard
Copy link
Owner

@hrydgard hrydgard commented Jun 5, 2025

The "kirk" (PSP decryption) engine state was global, causing bad clashes when we were doing things like decrypting NPDRM images (like (legitimately) downloaded games from PSN). So if you had a few of those, the UI could crash if you browsed to them in the game browser.

Now, there's a kirk instance for in-game use, and NPDRM reader contexts get their own ones. This resolves the issue and stops the crashes.

This commit series starts with a bunch of const cleanup, and then extracts the global state into a struct.

Big thanks to "its just wario" from Discord.

@hrydgard hrydgard added this to the v1.19.1 milestone Jun 5, 2025
@hrydgard hrydgard merged commit d389953 into master Jun 5, 2025
19 checks passed
@hrydgard hrydgard deleted the kirk-concurrency branch June 5, 2025 22:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant