mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-18 23:07:07 -05:00
Cult of the Lamb (PPSA06465) imports libSceContentSearch, including sceContentSearchGetContentLastUpdateId, OpenMetadataByContentId, GetTotalContentSize and GetNumOfContent (import audit in #2686), which were declared without parameters and threw. Give the nine pending calls the signatures of AlexAltea/orbital db_types.json (cc408367, lines 555-569) and SharpProspero Interop/Content/ContentSearch.cs (5dfdb4b0), and implement the content library the host has, which is empty: - GetNumOfContent, GetTotalContentSize and SearchContent report 0 rows and 0 bytes, GetContentLastUpdateId and the search calls report update id 0. A search limit above 92 returns 0x809D100A and every call before Init returns 0x809D1001, both from SharpProspero. - Filters and sort conditions use SharpProspero's layouts (added to SceTypes.hpp with size checks) and are checked against its enums; unknown values, null outputs and null arrays with a length throw. - OpenMetadata and OpenMetadataByContentId throw, as no source gives the error for content that is not in the library, so no metadata id is handed out and CloseMetadata, GetMetadataFieldInfo and GetMetadataValue throw too. The update id value, the argument errors and the check order are recorded in TechnicalDebt. The four ContentSearch calls leave the unimplemented-imports test, and guest_content_search covers the library.