mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-05 13:20:11 +00:00
sceSysmoduleIsLoaded, sceSysmoduleLoadModule and sceSysmoduleUnloadModule return success for an id missing from the module table, because titles that load or unload such an id aborted otherwise (b4db9fdd6,a2520aa07). Nothing tested or recorded it, and two commented-out throws were left in the code. Remove the commented-out throws, list the three functions under Silent stubs in the library's technical debt file, and test that unknown ids succeed without changing state while the internal variants still throw. Written with AI assistance (Claude). Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
718 B
718 B
libSceSysmodule technical debt
Silent stubs
- sceSysmoduleIsLoaded, sceSysmoduleLoadModule, sceSysmoduleUnloadModule (libSceSysmodule) accept a module id missing from the module table: they log it and return 0 without loading anything, so
sceSysmoduleIsLoadedreports an unknown module as loaded and unloading it succeeds, because titles that load or unload such an id aborted otherwise. The internal variants (sceSysmoduleLoadModuleInternal,sceSysmoduleUnloadModuleInternal,sceSysmoduleLoadModuleInternalWithArg,sceSysmoduleGetModuleHandleInternal) throw for an unknown id. What the console returns for an id it does not know is not verified.