Repository navigation
feat(libSceFreeType): expose raw SFNT name records - #9054
Merged
oneandonlydean merged 2 commits intoOct 22, 2026
Merged
Conversation
Progress report (2f161d4 → 091dc1d)📈 System libraries: 42.44% (+0.02%, +5 implemented functions) ✅ 5 implemented
|
This was referenced Oct 21, 2026
santhoshkumar-dev
marked this pull request as ready for review
October 21, 2026 12:02
12 tasks done
santhoshkumar-dev
force-pushed
the
codex/freetype-sfnt-names
branch
from
October 21, 2026 12:28
86de47c to
091dc1d
Compare
12 tasks done
Contributor
Contributor
Author
|
Confirmed the merge order with #9560. This PR retains |
12 tasks done
|
Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.
|
This was referenced Oct 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Implement
FT_Get_Sfnt_Name_CountandFT_Get_Sfnt_Namethrough the existing guest face bridge. The output uses an explicit 24-byte guest record, preserves raw bytes and byte lengths, and borrows the native face's cached strings. Failed queries leave the caller's record untouched.This follow-up builds on #9045's
Names.cpp; merge #9045 first. Its dependency on #8286 also orders the shared debt edits. The two new exports are distinct from #9045's glyph/PostScript-name APIs and from #8558's kerning work. Open, closed and merged PR searches found no existing implementation of these two functions.Names and NIDs come from the PS5 3.20 inventory. Behavior and ownership follow bundled FreeType 2.13.3 and its public record definition. Console signatures, layout and error compatibility remain unverified and are recorded in technical debt.
FT_Get_Sfnt_LangTagis absent from that inventory and is not added here.Tested
Windows 11 x64, WinLibs MinGW-w64 GCC 15.2.0 r7, Release,
BUILD_TESTING=ON, based on upstream0a5080477fplus #9045.cmake --build build --target libs guest_freetype_sfnt_names_tests guest_freetype_names_tests guest_freetype_tests guest_freetype_charmap_tests -j6passed, rebuilding all system libraries after the latest main changes.ctest --test-dir build --output-on-failure -R '^guest_freetype(_charmap|_names|_sfnt_names)?$': 4 passed (0.08 / 0.07 / 0.07 / 0.06 s).-Wall -Wextra -Werrorsource checks and repository conventions passed. The patched PRX containsB4-zPp0EATEandfbRv4M+XzL8.Historical build limitation (2026-10-21): the default Windows build on the stated base failed at
ImageArrayWindowPastLayerLimit.cppbecause static alignment 65536 exceeded MinGW COFF's maximum 8192. Merged #8310 fixes that declaration; this is no longer a current-main blocker. The library/test results above retain their stated PR head and base.No title, PS5 hardware or Linux runtime was tested.
Compatibility validation (2026-10-21): temporarily combined this PR with #8247, #8286, #8289, #9045, #9064 and the charmap-metadata follow-up on main
3e91c8edf5. All system libraries built and all seven FreeType tests passed. The C++ changes merged cleanly; temporary CMake/debt resolutions were used only for this local compatibility check and are not published.Rebase audit (2026-10-21): rebased onto main
d099bc6cd8, including the now-merged #8247 and #8289. All system libraries built. A temporary combination of the seven remaining FreeType branches passed all nine tests (0.07 / 0.07 / 0.06 / 0.06 / 0.16 / 0.04 / 0.06 / 0.06 / 0.05 s); all seven branches passed conventions. Temporary integration commits were not published.Merge coordination update (2026-10-23): new #9848 shares the test-registration insertion, with distinct source and tests. Proposed order is #8286 -> #9045 -> #9054 before #9848, retaining all registrations and its Apple import tests. Author confirmation is pending; this is not an implementation dependency.
Agreed documentation order (2026-10-23): #9924 -> #9933 -> #9045 -> #9054, preserving all PostScript metadata and naming entries. The existing #8286 prerequisite is retained. These implementations build independently; this order resolves the shared debt insertion.
Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)