Files
AnyPS5/docs/dev/debt/libSceSaveDataDialog.native.md
T
Omar Elmahy 49e65fd5b7 test(libSceSaveDataDialog.native): cover sceSaveDataDialogIsReadyToDisplay return across lifecycle
In GuestSaveDataDialog.cpp, verify that sceSaveDataDialogIsReadyToDisplay returns 1 before initialization and after termination, matching shadPS4 (savedatadialog.cpp at ce74386283).

Updates docs/dev/debt/libSceSaveDataDialog.native.md noting that the unconditional return follows shadPS4 and native console readiness state is unmeasured.
2026-10-31 02:13:54 +00:00

1.8 KiB

libSceSaveDataDialog.native technical debt

Silent stubs

  • libSceSaveDataDialog.native shows no UI and ignores progress values. Progress-bar mode (5) stays running until the caller closes it, matching Skyrim PPSA03747's save sequence; other modes still finish immediately and return button 1 and the first nonempty directory name. Console dialog timing and selection behavior remain unverified. Lifecycle state error codes follow shadPS4: sceSaveDataDialogClose returns SAVE_DATA_DIALOG_ERROR_NOT_RUNNING whenever not running, sceSaveDataDialogGetResult returns SAVE_DATA_DIALOG_ERROR_NOT_FINISHED whenever not finished (checked before null pointer), and sceSaveDataDialogTerminate closes running dialogs and returns OK, rejecting uninitialized calls with SAVE_DATA_DIALOG_ERROR_NOT_INITIALIZED, and progress updates (sceSaveDataDialogProgressBarInc, sceSaveDataDialogProgressBarSetValue) return SAVE_DATA_DIALOG_ERROR_NOT_RUNNING whenever not running. Parameter size in sceSaveDataDialogOpen is unvalidated as console behaviour is unmeasured.
  • sceSaveDataDialogIsReadyToDisplay returns 1 unconditionally without checking state, following shadPS4 (savedatadialog.cpp at ce74386283); native console readiness state is unmeasured.

Unknown function info

  • sceSaveDataDialogOpen (libSceSaveDataDialog.native) - no overlay dialog is drawn for any mode: the layouts of the user message, system message and error code parameters that the SaveDataDialogParam pointers lead to have no source in this repository or measurement on a PS5, so a dialog is not built from them. Closes when: the parameter layouts are measured on a PS5