Files
AnyPS5/docs/dev/debt/libSceNpFriendListDialog.md
T
Omar Elmahy f849e8fcc7 test(libSceNpFriendListDialog): cover null result precedence in sceNpFriendListDialogGetResultA matching firmware 13.42
Assert that sceNpFriendListDialogGetResultA returns COMMON_DIALOG_ERROR_ARG_NULL on a null result pointer prior to checking for unfinished state in the initialized state, preserving 0x5a sentinels when called with a valid buffer.

Updates docs/dev/debt/libSceNpFriendListDialog.md citing native PS5 firmware 13.42 module libSceNpFriendListDialog.sprx disassembly (offset 0xa10) and native execution data showing that null result is checked before NOT_FINISHED.
2026-10-31 20:56:56 +00:00

1.9 KiB

libSceNpFriendListDialog technical debt

Silent stubs

  • sceNpFriendListDialogOpenA (libSceNpFriendListDialog) - with ANYPS5_PSN_DIALOGS=show, a successful open shows AnyPS5's notice that the feature needs PlayStation Network; the console's own display without PlayStation Network is not measured, and the notice wording is AnyPS5's.
  • libSceNpFriendListDialog - the friend list dialog (sceNpFriendListDialogOpenA and sceNpFriendListDialogGetResultA) runs the common-dialog state machine but shows nothing and reports the user as having cancelled, as there is no PSN friend list. In sceNpFriendListDialogGetResultA, checking for a null result pointer (COMMON_DIALOG_ERROR_ARG_NULL) takes precedence over unfinished state (COMMON_DIALOG_ERROR_NOT_FINISHED), matching native PS5 firmware 13.42 module libSceNpFriendListDialog.sprx disassembly (offset 0xa10) and native export execution data. The signatures are from Orbital's type database; the result layout beyond the leading int32_t result code is not known, so nothing else is written.

Unknown function info