Files
AnyPS5/docs/dev/debt/libSceContentSearch.md
T

2.7 KiB

libSceContentSearch technical debt

Unknown function info

Functional

  • libSceContentSearch searches a content library that is empty on the host, as nothing is exported to it. The signatures follow AlexAltea/orbital and SharpProspero, which agree; the filter and sort layouts and enums, the limit of 92 rows, 0x809D100A for a larger limit and 0x809D1001 before sceContentSearchInit are SharpProspero's. sceContentSearchGetNumOfContent, sceContentSearchGetTotalContentSize and sceContentSearchSearchContent report 0 rows and 0 bytes without writing a content row, and the update id they and sceContentSearchGetContentLastUpdateId report is always 0; no reference gives the console's update id for a library that never changed. Filters and sort conditions are only checked against SharpProspero's enums, and an empty nested column set, a null filter value or an unknown enum value throws, as their validation is not yet matched to the native query builder; a null column set with length 0 is taken as no filter. sceContentSearchOpenMetadata and sceContentSearchOpenMetadataByContentId throw, as no reference gives the error for a path or content id that is not in the library, so no metadata id is ever handed out; metadata-field and value queries with valid pointers still throw because field-dependent errors remain unresolved. Every title is taken to hold the content-search permission (SharpProspero's 0x809D1013 is never returned). Initialization checks and outer query pointer/count/limit precedence follow the supplied module. Guest heap allocation, platform-dependent minimum heap size and nested query validation remain unimplemented