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

12 lines
1.8 KiB
Markdown

# libSceSaveDataDialog.native technical debt
### Silent stubs
- [libSceSaveDataDialog.native](../../../core/libs/prx/libSceSaveDataDialog.native/Export.cpp) 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](../../../core/libs/prx/libSceSaveDataDialog.native/Export.cpp) returns 1 unconditionally without checking state, following shadPS4 (savedatadialog.cpp at ce74386283); native console readiness state is unmeasured.
### Unknown function info
- [sceSaveDataDialogOpen](../../../core/libs/prx/libSceSaveDataDialog.native/Export.cpp) (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