fix: remove duplicate applet init and spurious nvExit() (HOS 22.x)#292
Closed
sapphicdisaster wants to merge 1 commit intoXITRIX:masterfrom
Closed
fix: remove duplicate applet init and spurious nvExit() (HOS 22.x)#292sapphicdisaster wants to merge 1 commit intoXITRIX:masterfrom
sapphicdisaster wants to merge 1 commit intoXITRIX:masterfrom
Conversation
- Remove duplicate appletInitializeGamePlayRecording() and appletSetWirelessPriorityMode() calls from main(). Both are already called internally by borealis SwitchPlatform; double-calling on HOS 22.x causes unexpected result codes from the applet manager. - Remove nvExit() from main(). nvInitialize() is never called by app code — deko3D owns the nv service refcount. On HOS 22.x the nv service IPC refcounting is stricter; the extra nvExit() caused a panic during teardown when pressing B to exit from the main menu.
d1add4a to
1da7769
Compare
Author
|
Sorry about the noise on the previous version of this PR — I'd rebased onto a local fetch of your repo that had picked up your VisionOS and FrameQueue work before it landed on master, so those commits got dragged into the diff. Force-pushed a clean version now — should be just the one commit touching |
Owner
|
Hi, thanks for your PR, I just noticed it while I did the same change just now |
Author
|
Ah, great minds! Thanks so much for all your work on this project — and for the major performance improvements and deko3d work too, that's exciting. Closing this out since you've got it covered. 💙 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Tested on HOS 22.0.0 / Atmosphere 1.1. It seems like 22.x tightened up some service lifecycle handling — a couple of things that were previously silent no-ops started causing real issues, so I traced them down:
1. Duplicate applet init calls
appletInitializeGamePlayRecording()andappletSetWirelessPriorityMode()are called inmain()beforebrls::Application::init(), which calls them again internally throughSwitchPlatform. Removing the duplicates frommain()— borealis already owns these.2. Spurious
nvExit()causing panic on clean exitnvExit()is called at the end ofmain(), butnvInitialize()is never called by app code — deko3D handles that internally. On 22.x this extra call panics during teardown, meaning pressing B to exit from the main menu hits an error screen every time. Removing the orphaned call fixes it cleanly.Happy to add a comment in the code if that's useful, or adjust anything — just wanted to flag this in case others hit it on newer firmware.